| 1 | # Änderungen — Klonkt
|
|---|
| 2 |
|
|---|
| 3 | Alle nennenswerten Änderungen an Klonkt. Das Neueste oben.
|
|---|
| 4 | Versionen folgen [SemVer](https://semver.org/lang/de/) (`1.0.0-beta.N` während der Beta).
|
|---|
| 5 |
|
|---|
| 6 | ## [Unreleased]
|
|---|
| 7 |
|
|---|
| 8 | ## [1.7.0] · 2026-08-21
|
|---|
| 9 |
|
|---|
| 10 | ### Hinzugefügt
|
|---|
| 11 | - **Deine Musik reist als Musik, nicht als Verweis darauf.** Ein Track ging als
|
|---|
| 12 | Notiz mit angehängter Datei über die Leitung, ein fremder Server sah also Text
|
|---|
| 13 | mit Anhang und nichts, was sagte: „das ist eine Veröffentlichung dieser
|
|---|
| 14 | Künstlerin oder dieses Künstlers“. Tracks sind jetzt vollwertige Audio-Objekte,
|
|---|
| 15 | ein Album ist ein eigenes Objekt auf der Leitung, und der Outbox trägt die
|
|---|
| 16 | Diskografie mit. Playlists föderieren als ActivityPub-Sammlungen und sind als
|
|---|
| 17 | solche auffindbar. Die Formen folgen dem, was Funkwhale bereits spricht, damit
|
|---|
| 18 | eine Klonkt-Veröffentlichung in einer Funkwhale-Bibliothek landet, statt
|
|---|
| 19 | verworfen zu werden.
|
|---|
| 20 | - **Der Beitrag ist die Veröffentlichung.** Einzelne Tracks in einem Beitrag
|
|---|
| 21 | werden zu einer Sammlung, Veröffentlichungsdatum und MusicBrainz-Release-ID
|
|---|
| 22 | reisen mit, und die Hashtags werden aus dem Rohtext gelesen statt aus der
|
|---|
| 23 | gesetzten Fassung — deshalb kamen sie vorher als Unsinn an, oder gar nicht.
|
|---|
| 24 | - **Beanspruche dich selbst in MusicBrainz.** Unter Verwaltung → Audio kannst du
|
|---|
| 25 | dich suchen und bestätigen, dass du das bist. Die Verknüpfung geht als
|
|---|
| 26 | `schema:sameAs` auf die Leitung, sodass andere Server dein Klonkt mit der
|
|---|
| 27 | Künstlerin oder dem Künstler verbinden können, die oder der du anderswo längst
|
|---|
| 28 | bist.
|
|---|
| 29 | - **Die ganze Seite als Musikkanal.** `/tracks.xml` veröffentlicht alles, was du
|
|---|
| 30 | herausgebracht hast, als einen Feed — für Player, die RSS sprechen und kein
|
|---|
| 31 | ActivityPub.
|
|---|
| 32 | - **Zieh mit deinem Konto um und nimm alles mit (FEP-1580).** Deine Beiträge,
|
|---|
| 33 | deine Audios, die Cover, die Playlists und die GUIDs ziehen mit, deine
|
|---|
| 34 | Folgeliste reist als CSV zum Hochladen oder Einfügen, und die Guardianship zieht
|
|---|
| 35 | vor dem Folgen um — in der anderen Reihenfolge stand ein Ward kurz ohne
|
|---|
| 36 | Aufsicht da. Ein umgezogenes Konto verriegelt die ausgehende Seite, damit von
|
|---|
| 37 | einer Adresse, die du nicht mehr nutzt, nichts Neues mehr abgeht. Das steht
|
|---|
| 38 | jetzt auf einer Seite, in Schritten, statt verstreut.
|
|---|
| 39 | - **Eine Leseansicht, neben Zeitleiste und Raster.** Ein Beitrag füllt den
|
|---|
| 40 | Bildschirm, die Nachbarn stehen links und rechts bereit, und das Scrollen
|
|---|
| 41 | rastet am oberen Rand des nächsten Beitrags ein. Jede Seite entscheidet selbst:
|
|---|
| 42 | Lesen, Zeitleiste, oder Zeitleiste am Rechner und Lesen am Telefon.
|
|---|
| 43 | - **Gäste melden sich mit dem Konto an, das sie schon haben (OpenWebAuth).** Ein
|
|---|
| 44 | Fan meldet sich über sein eigenes Klonkt an und wird hier Follower, nicht noch
|
|---|
| 45 | ein Kontoinhaber mit noch einem Passwort. Zwei Klonkts können einander
|
|---|
| 46 | anmelden, das funktioniert also in beide Richtungen.
|
|---|
| 47 | - **Acht Guardianship-Tore, die wirklich schalten.** Das Torpanel ist ein
|
|---|
| 48 | Cockpit: jedes Tor sichtbar, jeder Chip trägt seinen eigenen Stand, und die
|
|---|
| 49 | Apps wissen vorab, was zu ist. Antworten ist ein eigenes Tor, Folgeanfragen
|
|---|
| 50 | werden bei mehreren Guardians per Mehrheit entschieden, ein Ward kann selbst
|
|---|
| 51 | eine Frage stellen, und ein Logbuch bewahrt, warum eine Entscheidung fiel.
|
|---|
| 52 | - **Follower zuerst genehmigen, wenn du magst.** Eine Folgeanfrage wartet auf
|
|---|
| 53 | dein Ja, und bis dahin sieht die anfragende Person nichts von deinen Beiträgen.
|
|---|
| 54 | - **Jede Sammlung paginiert.** Der Outbox liefert jetzt `first` und `last` und
|
|---|
| 55 | blättert wirklich durch seine Seiten. Funkwhale wies ihn ohne diese beiden
|
|---|
| 56 | rundweg ab — eine Sammlung ohne Paginierung war also kein Schönheitsfehler,
|
|---|
| 57 | sondern eine verschlossene Tür.
|
|---|
| 58 | - **Gespräche wissen, was du gelesen hast.** Ungelesen zählt pro Gespräch, eine
|
|---|
| 59 | Lesung ist ein Ereignis statt einer Vermutung, und eine wartende Lesung
|
|---|
| 60 | antwortet mit der Differenz — kein Abholen einer ganzen Liste mehr, um eine
|
|---|
| 61 | neue Zeile zu finden.
|
|---|
| 62 | - **Apple-Music- und YouTube-Playlists betten sauber ein**, mit derselben
|
|---|
| 63 | Auswertung wie im Hub und einer Höhe, die zu dem passt, was du tatsächlich
|
|---|
| 64 | eingebettet hast.
|
|---|
| 65 | - **Nachrichten ist eine einzige Gesprächsansicht.** Nachrichten, Gespräche und
|
|---|
| 66 | Gesendet waren drei getrennte Filter, wodurch ein Austausch auseinanderfiel:
|
|---|
| 67 | was du gesendet hast, stand unter Gesendet, was zurückkam unter einem der
|
|---|
| 68 | beiden anderen, und um einem Verlauf zu folgen, musstest du hin und her
|
|---|
| 69 | wechseln. Es ist jetzt eine Gesprächsansicht, in der Gesendetes und
|
|---|
| 70 | Empfangenes im selben Verlauf stehen, das Älteste oben, mit deinen eigenen
|
|---|
| 71 | Beiträgen markiert. Vier Filter bleiben: Alle, Gespräche, Aktivität und
|
|---|
| 72 | Moderation.
|
|---|
| 73 | - **Ein Gespräch sagt, worum es geht.** Hängt ein Verlauf an einem deiner
|
|---|
| 74 | Beiträge, verlinkt die Kopfzeile darauf. Ohne diesen Zusammenhang lässt sich
|
|---|
| 75 | eine Antwort in einer Liste nicht einordnen. Verläufe ohne Beitrag laufen
|
|---|
| 76 | stattdessen pro Person.
|
|---|
| 77 | - **Beiträge in Nachrichten sehen aus wie Beiträge.** Formatierung, Bilder,
|
|---|
| 78 | Audio, Video, Zitatkarten und Link-Vorschauen werden jetzt genauso dargestellt
|
|---|
| 79 | wie in den Nachrichten der Zeitung — auch bei dem, was du selbst gesendet hast:
|
|---|
| 80 | ein von dir angehängtes Foto kam auf dem eigenen Bildschirm als nackter Text
|
|---|
| 81 | an, während alle anderen das Bild sahen.
|
|---|
| 82 | - **Die Guardian-App zeigt Beiträge deines Wards vollständig.** Dieselbe Lücke
|
|---|
| 83 | steckte in der Guardian-Ansicht: ein Beitrag deines Wards kam ohne Medien,
|
|---|
| 84 | Zitatkarte oder Emoji an — genau der Beitrag, den ein Guardian beurteilen
|
|---|
| 85 | können muss. Eine Inhaltswarnung bleibt dort wie bisher eingeklappt.
|
|---|
| 86 | - **Aus einem Gespräch heraus antworten.** Unter einem Verlauf steht ein eigenes
|
|---|
| 87 | Antwortfeld, der reichhaltige Editor mit Formatierung, Medien und Sprachwahl.
|
|---|
| 88 | Winken bleibt eine eigene Schaltfläche daneben: ein Winken ist ein Zeichen,
|
|---|
| 89 | keine Antwort.
|
|---|
| 90 |
|
|---|
| 91 | ### Behoben
|
|---|
| 92 | - **Der Verlauf unter einem fremden Beitrag wird über deinen eigenen Server
|
|---|
| 93 | geholt und nie gespeichert.** Antworten, Like- und Boost-Status und die
|
|---|
| 94 | FEP-9098-Emoji kommen jetzt mit, und die nächste Seite wird ebenfalls gelesen —
|
|---|
| 95 | vorher brach ein langer Verlauf auf halber Strecke ab.
|
|---|
| 96 | - **Die Ratenbegrenzung zählte die ganze Seite statt der aufrufenden Stelle**,
|
|---|
| 97 | sodass eine viel besuchte Seite allen 429er gab. Dazu gehört: ob du einem Proxy
|
|---|
| 98 | traust, hängt davon ab, wo du läufst, nicht davon, ob du in Entwicklung oder
|
|---|
| 99 | Produktion bist.
|
|---|
| 100 | - **Eine mitlaufende Uhr in der Antwort machte aus dem langen Poll eine
|
|---|
| 101 | Schleife.** Die Antwort änderte sich jede Sekunde, also wartete er nie — er kam
|
|---|
| 102 | nur immer wieder zurück.
|
|---|
| 103 | - **Der Editor übersteht einen Seitenwechsel.** An Elemente gebundene Module
|
|---|
| 104 | starten bei jeder Navigation neu, die Bearbeitungsseite lädt ihren Editor nach
|
|---|
| 105 | einem Zurück also wieder, und Speichern ohne Modul löscht nicht mehr, was du
|
|---|
| 106 | geschrieben hattest.
|
|---|
| 107 | - **Ein Slug ist ein lokaler Schlüssel, kein Name auf der Leitung.** Halbe Namen,
|
|---|
| 108 | fehlende Namen und drei Schreibweisen desselben Namens kamen alle daher, dass
|
|---|
| 109 | das eine für das andere gehalten wurde.
|
|---|
| 110 | - **Der Zirkel fiel über ein Medienfeld, das keine Liste war**, und riss dann die
|
|---|
| 111 | ganze Seite mit, statt nur diesen einen Beitrag.
|
|---|
| 112 | - **Menschen auf datenschutzstrengen Servern können dir wieder folgen.** Manche
|
|---|
| 113 | Server geben den öffentlichen Schlüssel eines Kontos nur an eine signierte
|
|---|
| 114 | Anfrage heraus. Klonkt fragte ohne Signatur, wurde abgewiesen und konnte die
|
|---|
| 115 | gerade eingegangene Folge-Anfrage deshalb nicht prüfen — sie wurde abgelehnt,
|
|---|
| 116 | und der andere Server versuchte es tagelang erneut. Klonkt signiert diese
|
|---|
| 117 | Abfrage jetzt, und solche Follows kommen durch. Das betraf auch alles andere,
|
|---|
| 118 | was von so einem Server geholt wurde: Profile, Beiträge und Antworten.
|
|---|
| 119 | - **Antworten anderer kommen jetzt im Verlauf an.** Antwortete jemand auf einen
|
|---|
| 120 | Beitrag in einem Gespräch, an dem du beteiligt warst, leitete dessen Server die
|
|---|
| 121 | Antwort an dich weiter — und sie wurde abgewiesen, weil ein weiterleitender
|
|---|
| 122 | Server mit seinem eigenen Schlüssel signiert und nicht mit dem des Autors.
|
|---|
| 123 | Verläufe waren auf deiner Seite dadurch stillschweigend unvollständig. Eine
|
|---|
| 124 | solche Antwort wird jetzt an der Quelle geprüft statt abgewiesen: der Beitrag
|
|---|
| 125 | wird bei dem Server geholt, der ihn beherbergt, und nur das von dort wird
|
|---|
| 126 | gespeichert. Eine weitergeleitete Löschung wird weiterhin abgewiesen, denn ein
|
|---|
| 127 | gelöschter Beitrag lässt sich nicht prüfen.
|
|---|
| 128 | - **Ein Like oder Boost sieht überall gleich aus.** Derselbe Beitrag konnte in
|
|---|
| 129 | der Zeitung als geliked und auf der Interact-Seite als nicht geliked
|
|---|
| 130 | erscheinen, weil beide eine eigene Buchführung hatten. Es gibt jetzt nur noch
|
|---|
| 131 | eine, also stimmen die Schaltflächen überein — auch für alles, worauf du vor
|
|---|
| 132 | dieser Version schon reagiert hast; das wird beim Aktualisieren der Seite
|
|---|
| 133 | automatisch übernommen.
|
|---|
| 134 | - **Ein Like aus einer App bleibt jetzt bestehen.** Ein Like aus Shaer wurde
|
|---|
| 135 | zwar gespeichert, aber die App bekam das nie zurück, sodass das Herz beim
|
|---|
| 136 | nächsten Laden wieder aussprang — und weil die App das Like nie sah, konnte sie
|
|---|
| 137 | es nur erneut senden und nie zurücknehmen. Das Zurücknehmen aus einer App
|
|---|
| 138 | funktioniert jetzt.
|
|---|
| 139 |
|
|---|
| 140 | ### Sicherheit
|
|---|
| 141 | - **Bezahlte Beiträge gaben ihren vollen Inhalt über den Outbox und den
|
|---|
| 142 | Follower-Backfill preis.** Die Schwärzung selbst funktionierte; die Abfragen
|
|---|
| 143 | reichten ihr eine Zeile ohne die Spalte `paid`, also las das Tor `undefined`,
|
|---|
| 144 | ließ alles durch und sagte nichts. Beide Abfragen holen jetzt, worüber sie
|
|---|
| 145 | entscheiden, und ein Test bewacht die Art des Fehlers statt dieses einen Falls.
|
|---|
| 146 | - **Fan-only-Beiträge gingen mit einem öffentlichen Etikett hinaus.** Sie waren
|
|---|
| 147 | richtig adressiert, aber falsch beschrieben — und so einen Widerspruch löst ein
|
|---|
| 148 | fremder Server genau in die falsche Richtung auf.
|
|---|
| 149 | - **Ein Leck zwischen Seiten im Tracker-Export.** Eine Seite kam über den
|
|---|
| 150 | Exporter an die Zeilen einer anderen.
|
|---|
| 151 | - **Das Playlist-Tor öffnet jetzt nur noch Dateien der Seite selbst.**
|
|---|
| 152 | - **Ein Schlüssel ist an den Akteur gebunden, für den er spricht.** Eine Signatur
|
|---|
| 153 | wird nur akzeptiert, wenn Schlüssel, Eigentümer und Akteur übereinstimmen;
|
|---|
| 154 | vorher konnte ein Schlüssel für jemanden bürgen, zu dem er keine Beziehung
|
|---|
| 155 | hatte.
|
|---|
| 156 | - **OpenWebAuth entpackt PKCS#1 v1.5 selbst**, ohne frühen Ausstieg und mit einer
|
|---|
| 157 | Obergrenze für Versuche. Node hat den Padding-Modus, der das erledigte,
|
|---|
| 158 | entfernt, weil er über Timing leckt (CVE-2023-46809, der Marvin-Angriff); es
|
|---|
| 159 | von Hand zu tun hält den Pfad gleich lang und schließt das Orakel, statt es
|
|---|
| 160 | wieder zu öffnen.
|
|---|
| 161 |
|
|---|
| 162 | - **Aktualisierte Komponenten schließen sieben Sicherheitshinweise.** Der
|
|---|
| 163 | schwerwiegendste steckte in der Bibliothek, die von außen eintreffende
|
|---|
| 164 | Beiträge säubert: ein sorgfältig gebauter Beitrag konnte ein Skript daran
|
|---|
| 165 | vorbeischmuggeln, und ein Skript, das auf deiner Seite läuft, kann in deinem
|
|---|
| 166 | Namen handeln. Gleichzeitig ging der Mailversand drei Hauptversionen weiter
|
|---|
| 167 | und schloss damit eine Reihe von Lücken — darunter eine, bei der ein
|
|---|
| 168 | präparierter Name Befehle in das Gespräch mit dem Mailserver einschleusen
|
|---|
| 169 | konnte, und eine, bei der eine Nachricht bei einer anderen Domain landen
|
|---|
| 170 | konnte als der adressierten. An Aussehen und Verhalten von Klonkt ändert das
|
|---|
| 171 | nichts. Ein Hinweis bleibt bewusst offen: er betrifft eine Art, Bezeichner zu
|
|---|
| 172 | erzeugen, die Klonkt nicht verwendet.
|
|---|
| 173 |
|
|---|
| 174 | ## [1.6.0] · 2026-07-31
|
|---|
| 175 |
|
|---|
| 176 | ### Hinzugefügt
|
|---|
| 177 | - **Guardians (FEP-633c).** Ein Konto kann jetzt von einer oder mehreren
|
|---|
| 178 | Guardians behütet werden, so wie ein Kind Eltern hat. Eine Guardian bietet an,
|
|---|
| 179 | sich um jemanden zu kümmern; der Ward nimmt in seinen eigenen Nachrichten an,
|
|---|
| 180 | und etwaige bestehende Guardians stimmen mit zu, sodass sich niemand allein an
|
|---|
| 181 | ein Kind hängen kann. Nach der Zusage erscheint die Guardian am Actor des Wards
|
|---|
| 182 | (`shaer:guardians`) und ist erreichbar, wenn der Ward um Hilfe ruft. Es baut auf
|
|---|
| 183 | gewöhnlichem ActivityPub auf, Guardian und Ward dürfen also auf verschiedenen
|
|---|
| 184 | Servern liegen.
|
|---|
| 185 | - **Eine Guardian-App zum Installieren.** Eine eigene, installierbare Ecke unter
|
|---|
| 186 | `/guardian` für Guardians: Wards hinzufügen und verwalten, ein Nachrichten-
|
|---|
| 187 | zentrum für eingehende Hilferufe und eigene Meldungen für Hilferufe und
|
|---|
| 188 | Vormundschafts-Verkehr, auch bei geschlossener App.
|
|---|
| 189 | - **Vormundschaftsangebote landen in deinen Nachrichten.** Wenn dir jemand
|
|---|
| 190 | anbietet, deine Guardian zu werden, erscheint das in deinen eigenen Nachrichten
|
|---|
| 191 | als klarer Eintrag mit Annehmen und Ablehnen, sodass du dort antwortest, wo du
|
|---|
| 192 | ohnehin deine Nachrichten liest, nicht an einer separaten Stelle.
|
|---|
| 193 | - **Die Inhaberin kann ihre Inbox über C2S lesen.** Ein GET auf die Inbox mit
|
|---|
| 194 | dem eigenen Bearer liefert aktuelle eingegangene Beiträge (die Konten, denen
|
|---|
| 195 | du folgst) als Create(Note)-Einträge, damit eine verbundene App (Shaer) einen
|
|---|
| 196 | vereinten Feed bauen kann. Für alle anderen bleibt die Inbox write-only.
|
|---|
| 197 | - **"Mehr laden" in den Feeds.** Solo (Start), Zirkel, Zeitung und Nachrichten
|
|---|
| 198 | laden jetzt in Blöcken von 72 mit einem "Mehr laden"-Button statt einer harten
|
|---|
| 199 | Grenze, sodass ältere Einträge wieder erreichbar sind. 72 ist durch 2, 3 und 4
|
|---|
| 200 | teilbar, damit die Rasteransichten immer mit einer vollen Reihe enden. Das
|
|---|
| 201 | Nachladen ist sofort (htmx), Suche und Filter in Nachrichten funktionieren über
|
|---|
| 202 | alle Seiten, und der Button verschwindet auf der letzten Seite.
|
|---|
| 203 | - **"Über das Fediverse interagieren" neben Teilen.** Auf einem Beitrag bekommen
|
|---|
| 204 | Besucher neben Teilen einen Button, um von ihrem eigenen Fediverse-Server zu
|
|---|
| 205 | antworten, zu liken oder zu boosten (fragt nach deinem Server und übergibt an
|
|---|
| 206 | deine Instanz). Für die Seiteninhaberin und bei ausgeschalteter Föderation
|
|---|
| 207 | ausgeblendet.
|
|---|
| 208 | - **FEDERATION.md (FEP-67ff).** Die Repo-Wurzel dokumentiert jetzt, was Klonkt
|
|---|
| 209 | auf der Leitung spricht: ActivityPub S2S und C2S, WebFinger, HTTP Signatures,
|
|---|
| 210 | NodeInfo 2.1, OAuth (PKCE), die gesendeten und empfangenen Activities und
|
|---|
| 211 | Objekttypen, die Mastodon-kompatiblen Erweiterungsterme und die FEPs, die es
|
|---|
| 212 | unterstützt oder verfolgt. Hilft anderen Implementierungen bei der
|
|---|
| 213 | Interoperabilität.
|
|---|
| 214 | - **Nachrichten: deine Umfrage ist beendet.** Wenn eine deiner eigenen Umfragen
|
|---|
| 215 | schließt, zeigt Nachrichten einen "Umfrage beendet"-Eintrag mit dem Ergebnis:
|
|---|
| 216 | ein Balken je Option mit Prozentwert, plus die Anzahl der Teilnehmer. Er liegt
|
|---|
| 217 | unter dem Chip Aktivität und ist wie der Rest durchsuchbar.
|
|---|
| 218 | - **Nachrichten: schärfere Filter und ein Suchfeld.** Die Filter-Chips sind
|
|---|
| 219 | jetzt Nachrichten (@Mentions und private/DM-Antworten), Gespräche (öffentliche
|
|---|
| 220 | Antworten), Aktivität (Likes, Boosts, Follows), Moderation (Meldungen) und
|
|---|
| 221 | Gesendet, neben Alle. Ein Suchfeld filtert die Liste nach Absender und
|
|---|
| 222 | Nachrichtentext und kombiniert sich mit dem aktiven Chip. Komplett
|
|---|
| 223 | client-seitig, sofort.
|
|---|
| 224 | - **Der Antwort-Editor wurde optisch aufgeräumt.** Seine Symbolleiste nutzt jetzt
|
|---|
| 225 | dieselben Icons und 32px-Buttons wie der Beitragseditor, aktive Formatierung
|
|---|
| 226 | in der Akzentfarbe gefüllt, eine gerahmte Editor-Box mit Fokus-Ring und
|
|---|
| 227 | aufgeräumtere Sprach-, Mention- und Anhang-Chips. Eine Editor-Familie auf der
|
|---|
| 228 | ganzen Seite.
|
|---|
| 229 | - **Der Antwort-Editor zeigt, wen du adressierst (reichhaltige Antworten,
|
|---|
| 230 | Phase 3).** Eine "An:"-Leiste über dem Editor zeigt die Gesprächspartner (den
|
|---|
| 231 | Autor, dem du antwortest, plus die früheren Autoren des Threads) als
|
|---|
| 232 | entfernbare Chips, statt deinen Text mit @Mentions zu füllen. Entferne einen
|
|---|
| 233 | Chip und diese Person wird nicht mehr erwähnt, getaggt oder angepingt; selbst
|
|---|
| 234 | getippte Mentions bleiben im Text. Das Bearbeiten einer gesendeten Antwort
|
|---|
| 235 | behält jede Co-Mention.
|
|---|
| 236 | - **Das Bearbeiten einer gesendeten Antwort nutzt jetzt ebenfalls den
|
|---|
| 237 | Rich-Editor.** Die Bearbeiten-Formulare auf Nachrichten und der
|
|---|
| 238 | Interaktionsseite öffnen denselben Editor wie neue Antworten (Formatierung
|
|---|
| 239 | bleibt, Sprache anpassbar, Vollbild auf Telefonen). Anhänge der Antwort
|
|---|
| 240 | überstehen eine Bearbeitung unangetastet.
|
|---|
| 241 | - **Medien in Antworten (reichhaltige Antworten, Phase 2).** Ziehe, füge ein
|
|---|
| 242 | oder wähle Bilder, Audio und Video direkt im Antwort-Editor (die Büroklammer
|
|---|
| 243 | funktioniert auf Telefonen). Dateien laden auf deine eigene Seite hoch,
|
|---|
| 244 | erscheinen beim Schreiben als entfernbare Chips, reisen als echte Anhänge der
|
|---|
| 245 | föderierten Note mit und erscheinen in deinem Thread. Eine Antwort nur mit
|
|---|
| 246 | Medien (ohne Text) geht auch.
|
|---|
| 247 | - **Reichhaltige Antworten (Phase 1).** Das Antworten auf Fediverse-Kommentare
|
|---|
| 248 | (inline im Thread und auf der Interaktionsseite) nutzt jetzt einen geteilten
|
|---|
| 249 | Rich-Editor: fett, kursiv, Links, Listen und Zitate, plus eine Sprachwahl für
|
|---|
| 250 | deine Antwort (als Language-Map der Note mitgesendet). Auf Telefonen öffnet
|
|---|
| 251 | der Editor als Vollbild-Ansicht, das Muster, das auf Mobilgeräten wirklich
|
|---|
| 252 | funktioniert. Ohne JavaScript funktioniert das einfache Textfeld weiter.
|
|---|
| 253 | Medien in Antworten sind die nächste Phase.
|
|---|
| 254 | - **Verbundene Apps auf deiner Kontoseite widerrufen.** Ein Abschnitt
|
|---|
| 255 | "Verbundene Apps" listet jede App auf, der du per OAuth Zugriff gegeben hast
|
|---|
| 256 | (Name, Seite, Scope, zuletzt genutzt), mit einem Widerrufen-Knopf. Bereits
|
|---|
| 257 | vergebene Tokens erscheinen ebenfalls, da sie immer (gehasht) gespeichert
|
|---|
| 258 | waren; das Token selbst wird nie behalten, daher erfolgt der Widerruf über den
|
|---|
| 259 | Token-Hash.
|
|---|
| 260 | - **Der Kontoinhaber kann seine eigenen Follower und Gefolgten über C2S lesen.**
|
|---|
| 261 | Die `followers`- und `following`-Sammlungen bleiben für die Öffentlichkeit
|
|---|
| 262 | count-only (Datenschutz), aber eine Anfrage mit einem auf diese Seite
|
|---|
| 263 | begrenzten C2S-Bearer liefert jetzt die echten Actor-URIs, damit eine App
|
|---|
| 264 | (Shaer) eine Freundesliste bauen kann. Für anonyme Aufrufer ändert sich
|
|---|
| 265 | nichts.
|
|---|
| 266 | - **App-Zugriff über OAuth 2.0 (ActivityPub Client-to-Server, Phase 1).** Klonkt
|
|---|
| 267 | spricht jetzt den standardmäßigen AP-C2S-Auth-Handshake, damit native und
|
|---|
| 268 | Web-Clients (zuerst die Shaer-Apps) sich verbinden können: dynamische
|
|---|
| 269 | Client-Registrierung (RFC 7591), ein PKCE-Authorization-Code-Flow mit einem
|
|---|
| 270 | Zustimmungsbildschirm, auf dem du wählst, als welche deiner Seiten die App
|
|---|
| 271 | posten darf, und Bearer-Tokens (gehasht gespeichert, einmalige Codes). Das
|
|---|
| 272 | Actor-Dokument bewirbt die OAuth- und uploadMedia-Endpunkte und
|
|---|
| 273 | `/.well-known/oauth-authorization-server` (RFC 8414) liefert die Metadaten,
|
|---|
| 274 | sodass Clients alles entdecken statt Pfade festzuschreiben. Nur öffentliche
|
|---|
| 275 | Clients + PKCE, keine Client-Secrets.
|
|---|
| 276 | - **Die Outbox nimmt Beiträge von Apps an (C2S, Phase 1 komplett).** Ein
|
|---|
| 277 | `POST` mit Bearer-Token an `/ap/users/:slug/outbox` steuert jetzt dein Konto
|
|---|
| 278 | aus einer App: einen Beitrag veröffentlichen, antworten, liken, teilen, folgen
|
|---|
| 279 | und all das rückgängig machen. Aktivitäten laufen über dieselbe
|
|---|
| 280 | Zustell-Maschinerie wie die Web-UI; eine nackte Note wird laut Spezifikation in
|
|---|
| 281 | ein Create verpackt; Inhalt wird bereinigt; das Token ist an eine Seite
|
|---|
| 282 | gebunden. Hinweis: Das ist ActivityPub C2S, das die Shaer-Apps sprechen.
|
|---|
| 283 | Mastodon-Clients (Ivory usw.) nutzen Mastodons eigene API und werden hier nicht
|
|---|
| 284 | unterstützt.
|
|---|
| 285 |
|
|---|
| 286 | ### Behoben
|
|---|
| 287 | - **OAuth-Zustimmung übergibt jetzt zuverlässig an native Apps.** Nach
|
|---|
| 288 | Allow/Deny war die Weiterleitung an ein natives Custom-Scheme (z. B.
|
|---|
| 289 | `com.klonkt.shaer:/oauth`) ein einfacher 302, den mobile Browser stillschweigend
|
|---|
| 290 | verwerfen. Der Zustimmungsschritt liefert nun eine kleine Zwischenseite für
|
|---|
| 291 | Nicht-http-Redirect-URIs, die automatisch weiterleitet und einen "App öffnen"-
|
|---|
| 292 | Tipp-Link bietet (ein Tipp startet die App auf Android zuverlässig; iOS'
|
|---|
| 293 | Web-Auth-Session fängt sie ohnehin ab). Web-Clients (http/https) bekommen
|
|---|
| 294 | weiterhin einen 302.
|
|---|
| 295 | - **Besucher können auf die eigenen Kommentare des Seiteninhabers antworten.**
|
|---|
| 296 | Der Knopf "über das Fediverse antworten" erschien nur bei Kommentaren anderer;
|
|---|
| 297 | bei den eigenen Kommentaren der Seite in einem Thread bekamen Besucher nichts,
|
|---|
| 298 | sodass man dem Autor nicht von der eigenen Instanz aus antworten konnte.
|
|---|
| 299 |
|
|---|
| 300 | ## [1.5.0] · 2026-07-18
|
|---|
| 301 |
|
|---|
| 302 | ### Hinzugefügt
|
|---|
| 303 | - **Nachrichten: deine Antworten und Meldungen auf einer Seite.** Ein
|
|---|
| 304 | Nachrichten-Tab ersetzt Antworten und Meldungen. Ein Strom mit Filterchips
|
|---|
| 305 | (Alle, Gespräche, Aktivität, Gesendet): deine eigenen gesendeten Antworten
|
|---|
| 306 | stehen mit im Gespräch (mit Bearbeiten und Löschen), Likes und Boosts auf
|
|---|
| 307 | denselben Beitrag gruppieren sich zu einer Zeile, private Antworten tragen ein
|
|---|
| 308 | Schloss, und Neues seit deinem letzten Besuch bekommt einen Punkt. Das
|
|---|
| 309 | Interaktions-Bookmarklet zog mit um. Alte /fediverse- und
|
|---|
| 310 | /notifications-Links leiten auf /messages um.
|
|---|
| 311 | - **Connect: wem du folgst und wer dir folgt auf einer Seite.** Ein Connect-Tab
|
|---|
| 312 | ersetzt die getrennten Folge-ich- und Follower-Seiten, mit Richtung pro
|
|---|
| 313 | Verbindung (folge ich →, Follower ←, gegenseitig ↔) und, für Konten, an die du
|
|---|
| 314 | zustellst, wann sie zuletzt erreicht wurden. Konten, die du nicht mehr
|
|---|
| 315 | erreichst, wandern in einen eingeklappten Bereich "Nicht erreichbar" zum
|
|---|
| 316 | Aufräumen. Alte /following- und /followers-Links leiten auf /connect um.
|
|---|
| 317 | - **Eingehende Antworten auf deine Beiträge moderieren.** Als Seiteninhaber
|
|---|
| 318 | kannst du eine Antwort jetzt aus deinem Thread entfernen (sie bleibt weg:
|
|---|
| 319 | erneute Zustellung und Thread-Auffüllung werden durch einen Tombstone
|
|---|
| 320 | blockiert) und sie beim Server des Autors melden, direkt aus dem Thread.
|
|---|
| 321 | Funktioniert auch für private Antworten, die sich nicht über den
|
|---|
| 322 | Fediverse-Interaktionsfluss behandeln lassen.
|
|---|
| 323 |
|
|---|
| 324 | ### Behoben
|
|---|
| 325 | - **Ein geboosteter Videobeitrag behält sein Video im Zirkel.** Das Boosten
|
|---|
| 326 | eines Nur-Video-Beitrags (Loops.video) speicherte ihn ohne Medien, sodass der
|
|---|
| 327 | Zirkel eine nackte Textkachel statt eines Video-Thumbnails zeigte; erneutes
|
|---|
| 328 | Boosten konnte das Video sogar aus einer bereits gecachten Kopie löschen.
|
|---|
| 329 | Boosts tragen jetzt die vollen typisierten Medien, und ein Refresh löscht
|
|---|
| 330 | gecachte Medien nicht mehr.
|
|---|
| 331 | - **Der Titel der Interaktionsseite folgt deiner Sprache.** "Interacteer via de
|
|---|
| 332 | fediverse" stand fest auf Niederländisch im Browser-Tab, auch auf einer
|
|---|
| 333 | englischsprachigen Seite.
|
|---|
| 334 | - **Das Apple-Music-Icon sieht wieder wie das Apple-Logo aus.** Das alte Icon
|
|---|
| 335 | war eine entstellte Form.
|
|---|
| 336 | - **Statistik-Spalten springen in der 30- und 90-Tage-Ansicht nicht mehr.**
|
|---|
| 337 | Spalten ohne Datumslabel klappten leicht ein; jede Spalte behält jetzt ihre
|
|---|
| 338 | Labelzeile.
|
|---|
| 339 | - **Private Antworten erscheinen nicht mehr auf der öffentlichen Beitragsseite.**
|
|---|
| 340 | Eine Nur-Follower- oder Direkt-(DM-)Antwort auf deinen Beitrag wurde für alle
|
|---|
| 341 | im öffentlichen Thread gezeigt. Eingehende Antworten speichern jetzt ihre
|
|---|
| 342 | Fediverse-Adressierung; der öffentliche Thread zeigt nur öffentliche und
|
|---|
| 343 | ungelistete Antworten. Private erreichen dich weiterhin über Meldungen, mit
|
|---|
| 344 | dem zugehörigen Beitrag.
|
|---|
| 345 | - **Nackte Video/Audio-Embeds laufen nicht mehr über die Spalte hinaus.** Ein
|
|---|
| 346 | `.webm` / `.mp4` / `.mp3`-Player passt jetzt in die Inhaltsbreite wie die
|
|---|
| 347 | iframe-Embeds; die Breitenregel galt zuvor nur für `iframe`.
|
|---|
| 348 |
|
|---|
| 349 | ## [1.4.0] · 2026-07-14
|
|---|
| 350 |
|
|---|
| 351 | ### Hinzugefügt
|
|---|
| 352 | - **Follower-Liste mit Zustellstatus.** Ein neuer Fediverse-Tab zeigt, wer dir
|
|---|
| 353 | folgt und wann jedes Konto zuletzt erreicht wurde, sodass tote Konten auffallen
|
|---|
| 354 | und du sie nach einer Prüfung entfernen kannst.
|
|---|
| 355 | - **Nackte Medienlinks spielen direkt ab.** Ein einfacher `.webm`-, `.mp4`- oder
|
|---|
| 356 | `.mp3`-Link wird jetzt ein echter Player statt eines toten Links.
|
|---|
| 357 | - **Hashtags, Links und Erwähnungen sind auch auf deiner Seite anklickbar.**
|
|---|
| 358 | `#Tags`, URLs und `@Erwähnungen` in einem Beitrag werden zu Links auf der Seite
|
|---|
| 359 | selbst, nicht nur in der föderierten Kopie. Erwähnungen werden einmal beim
|
|---|
| 360 | Speichern aufgelöst, sodass Seiten schnell bleiben.
|
|---|
| 361 |
|
|---|
| 362 | ### Behoben
|
|---|
| 363 | - **Antworten, gelöschte und bearbeitete Antworten kommen immer an.** Sie gingen
|
|---|
| 364 | verloren, wenn ein Server kurz nicht erreichbar war; sie laufen jetzt über die
|
|---|
| 365 | Retry-Warteschlange wie Beiträge.
|
|---|
| 366 | - **Video-Thumbnails für mehr Videos.** Cover von Videos mit ihren Metadaten am
|
|---|
| 367 | Ende der Datei (Loops.video, Handy-Exporte) bekommen jetzt ein Thumbnail statt
|
|---|
| 368 | keines.
|
|---|
| 369 | - **Ein reines Video-Cover zeigt ein Posterbild auf der Beitragsseite.** Es bleibt
|
|---|
| 370 | in der Solo-Ansicht nicht mehr leer.
|
|---|
| 371 | - **Die installierte App zeigt bei wackeligem Start keine alten Daten mehr.** Ein
|
|---|
| 372 | Kaltstart bei schlechter Verbindung aktualisiert jetzt, statt eine veraltete
|
|---|
| 373 | Seite zu zeigen.
|
|---|
| 374 | - **Die Updates-Seite folgt deinem Branch.** Auf dem Stable-Branch siehst du die
|
|---|
| 375 | Änderungen von main nicht mehr als „neueste“.
|
|---|
| 376 |
|
|---|
| 377 | ## [1.3.5] — 2026-07-04
|
|---|
| 378 |
|
|---|
| 379 | ### Behoben
|
|---|
| 380 | - **Umfragen behalten ihr Cover, wenn sie geboostet werden.** Eine Umfrage mit
|
|---|
| 381 | Musik oder Embed wurde ohne Cover föderiert, sodass eine geteilte Umfrage eine
|
|---|
| 382 | leere Kachel zeigte; das Cover reist jetzt mit.
|
|---|
| 383 | - **Die Updates-Seite der Android-App zeigt, was wirklich installierbar ist.**
|
|---|
| 384 | Sie las den neuesten Release-Branch, der der Handy-Build kurzzeitig
|
|---|
| 385 | vorauslaufen konnte — Aktualisieren installierte dann dieselbe Version erneut.
|
|---|
| 386 | Sie liest jetzt die Version des Handy-Bundles selbst.
|
|---|
| 387 |
|
|---|
| 388 | ## [1.3.4] — 2026-07-04
|
|---|
| 389 |
|
|---|
| 390 | ### Behoben
|
|---|
| 391 | - **Boosts, die ihr Cover verloren hatten, bekommen es automatisch zurück.**
|
|---|
| 392 | Beiträge, die du vor dem Cover-Fix geboostet hast, waren ohne Artwork
|
|---|
| 393 | gespeichert; sie werden beim nächsten Neustart einmalig aufgefrischt. Ist der
|
|---|
| 394 | Heimserver eines Beitrags in dem Moment kurz nicht erreichbar, wird es bei den
|
|---|
| 395 | nächsten Neustarts erneut versucht statt endgültig übersprungen. Einen Beitrag
|
|---|
| 396 | erneut zu boosten aktualisiert jetzt ebenfalls die gespeicherte Kopie (Cover,
|
|---|
| 397 | Inhalt) — aus dem Feed wie von der Interact-Seite.
|
|---|
| 398 |
|
|---|
| 399 | ## [1.3.3] — 2026-07-03
|
|---|
| 400 |
|
|---|
| 401 | ### Behoben
|
|---|
| 402 | - **Geteilte Musikbeiträge behalten ihr Cover.** Wenn du einen Titel von jemandem
|
|---|
| 403 | geteilt (geboostet) hast, dem du nicht folgst, fehlte das Cover; es wird jetzt
|
|---|
| 404 | angezeigt, genau wie bei Personen, denen du folgst.
|
|---|
| 405 |
|
|---|
| 406 | ## [1.3.2] — 2026-07-02
|
|---|
| 407 |
|
|---|
| 408 | ### Behoben
|
|---|
| 409 | - **Die Updates-Seite funktioniert jetzt in der Android-App.** Sie zeigt ab
|
|---|
| 410 | sofort die neueste verfügbare Version, und der Aktualisieren-Button lädt und
|
|---|
| 411 | installiert sie direkt auf dem Handy (Beiträge und Einstellungen bleiben
|
|---|
| 412 | erhalten).
|
|---|
| 413 |
|
|---|
| 414 | ## [1.3.1] — 2026-07-02
|
|---|
| 415 |
|
|---|
| 416 | ### Behoben
|
|---|
| 417 | - **Musik läuft auf Android im Hintergrund weiter.** Wenn ein Titel endete,
|
|---|
| 418 | während das Handy gesperrt oder die App im Hintergrund war, startete der
|
|---|
| 419 | nächste Titel und stoppte nach einer Sekunde wieder. Der Player führt die
|
|---|
| 420 | Warteschlange jetzt als einen durchgehenden Stream zu, sodass das
|
|---|
| 421 | Weiterspringen zum nächsten Titel nicht mehr als "neue" Wiedergabe zählt,
|
|---|
| 422 | die der Browser pausieren darf.
|
|---|
| 423 |
|
|---|
| 424 | ## [1.3.0] — 2026-07-02
|
|---|
| 425 |
|
|---|
| 426 | ### Hinzugefügt
|
|---|
| 427 | - **Wähle eine helle oder dunkle Teilen-Karte.** Das automatisch erzeugte Teilbild folgt deinem
|
|---|
| 428 | Site-Thema; unter Verwaltung → SEO kannst du es jetzt fest auf hell oder dunkel stellen.
|
|---|
| 429 | - **Eine Erwähnung ist jetzt eine Benachrichtigung.** Wenn dich jemand im Fediverse in einem
|
|---|
| 430 | Beitrag erwähnt — auch in einem, der keine Antwort an dich ist — erscheint das in deinen
|
|---|
| 431 | Fediverse-Benachrichtigungen mit einem Link zum Original.
|
|---|
| 432 | - **Cover-Art bei offen geteiltem Audio.** Ein offen im Fediverse geteilter Track trägt jetzt sein
|
|---|
| 433 | Cover (oder das Beitragscover) mit, sodass Audio-Player, die Artwork unterstützen, es statt einer
|
|---|
| 434 | leeren Kachel anzeigen.
|
|---|
| 435 | - **Einen Beitrag im Fediverse melden.** Von einem Fediverse-Beitrag aus kannst du ihn jetzt den
|
|---|
| 436 | Moderatoren seines Heimatservers melden, mit optionaler Begründung — und meldet jemand deine Seite,
|
|---|
| 437 | erscheint die Meldung in deinen Fediverse-Benachrichtigungen.
|
|---|
| 438 | - **Sprache eines Beitrags festlegen.** Wähle, in welcher Sprache du einen Beitrag geschrieben hast —
|
|---|
| 439 | im Fediverse funktionieren damit der Sprachfilter der Timeline und die Übersetzen-Schaltfläche.
|
|---|
| 440 | - **Alt-Text für Bilder.** Gib deinem Titelbild eine Beschreibung (Inline-Bilder behalten ihren
|
|---|
| 441 | eigenen Alt-Text) — sie föderiert ins Fediverse und lässt Screenreader das Bild beschreiben.
|
|---|
| 442 | - **Erwähne Personen in einem Beitrag.** `@benutzer@server` in einem Beitrag verlinkt jetzt auf ihr
|
|---|
| 443 | Profil und benachrichtigt sie im Fediverse — auch wenn sie dir nicht folgen — wie eine Erwähnung
|
|---|
| 444 | in einer Antwort.
|
|---|
| 445 | - **Kurze Videos im Feed spielen automatisch ab und wiederholen sich.** Ein animiertes Cover oder ein
|
|---|
| 446 | kurzer (≤30s) Clip im News-Feed wird jetzt automatisch stumm in Schleife abgespielt, wie ein GIF;
|
|---|
| 447 | längere Videos behalten ihre Steuerung.
|
|---|
| 448 | - **Über Fediverse-Umfragen abstimmen.** Eine Umfrage von einem Konto, dem du folgst, erscheint jetzt
|
|---|
| 449 | im News-Feed mit Optionen und aktuellen Ergebnissen, und du kannst abstimmen — das föderiert zurück
|
|---|
| 450 | wie eine normale Mastodon-Stimme.
|
|---|
| 451 | - **Erstelle eigene Umfragen.** Ein Beitrag kann jetzt eine Umfrage enthalten (Einfach- oder
|
|---|
| 452 | Mehrfachauswahl, mit einer Laufzeit). Sie föderiert als echte Fediverse-Umfrage, sodass deine
|
|---|
| 453 | Mastodon-Follower aus ihrer eigenen App abstimmen können; die Live-Ergebnisse stehen am Beitrag und
|
|---|
| 454 | die Umfrage schließt sich selbst, sobald die Zeit abgelaufen ist.
|
|---|
| 455 |
|
|---|
| 456 | ### Geändert
|
|---|
| 457 | - **Audio offen zu teilen ist jetzt unumkehrbar.** Sobald ein Track offen im Fediverse geteilt wurde,
|
|---|
| 458 | ist die Datei verbreitet — erneutes "Schließen" wäre Scheinsicherheit. Der Editor sperrt die Wahl
|
|---|
| 459 | nach dem Öffnen und warnt dich, bevor du sie ankreuzt.
|
|---|
| 460 |
|
|---|
| 461 | ### Behoben
|
|---|
| 462 | - **Entfernte Videos zeigen ein Vorschaubild.** Ein Video im News-Feed oder auf einer Zirkel-Kachel
|
|---|
| 463 | (z.B. von Loops oder PeerTube) erschien als schwarze Fläche, bis man auf Abspielen drückte; jetzt
|
|---|
| 464 | gibt es ein echtes Posterbild. (Längere Videos behalten bewusst ihre Steuerung — nur Clips unter
|
|---|
| 465 | 30 Sekunden laufen automatisch wie ein GIF.)
|
|---|
| 466 | - **Erwähnungen, Hashtags und Links in Klammern funktionieren jetzt.** Eine Erwähnung wie
|
|---|
| 467 | `(@benutzer@server)`, ein `(#hashtag)` oder eine URL in Klammern föderierte als reiner Text —
|
|---|
| 468 | und die erwähnte Person wurde nie benachrichtigt. Sie verlinken (und benachrichtigen) jetzt wie
|
|---|
| 469 | ohne Klammern.
|
|---|
| 470 | - **Nackte Webadressen werden im Fediverse zu Links.** Eine einfache URL in einem Beitrag oder einer
|
|---|
| 471 | Antwort föderiert jetzt als klickbarer Link statt als reiner Text.
|
|---|
| 472 |
|
|---|
| 473 | ## [1.2.0] — 2026-07-01
|
|---|
| 474 |
|
|---|
| 475 | ### Hinzugefügt
|
|---|
| 476 | - **PeerTube-Videos im Feed.** Ein PeerTube-Link in einem Beitrag zeigt jetzt einen eingebetteten
|
|---|
| 477 | Player im News-Feed, wie es YouTube, Spotify und SoundCloud bereits taten.
|
|---|
| 478 | - **Helle Teilen-Bilder.** Seiten mit einem hellen Standard-Theme erhalten beim Teilen einer Seite
|
|---|
| 479 | nun eine passende helle Open-Graph-Karte statt immer einer dunklen.
|
|---|
| 480 | - **Eigene Besuche aus der Statistik ausschließen.** Als Administrator kannst du jetzt deine eigene
|
|---|
| 481 | IP-Adresse aus deiner Seitenstatistik ausschließen, für ein wahreres Bild der echten Besucher.
|
|---|
| 482 | - **Rechtsklick „Speichern" ist bei Covern, Bildern und Videos deaktiviert** — eine leichte Hürde,
|
|---|
| 483 | damit das Artwork nicht mit einem Klick gespeichert werden kann (Reibung, kein Schutz).
|
|---|
| 484 |
|
|---|
| 485 | ### Behoben
|
|---|
| 486 | - **Animierte Video-Cover werden jetzt überall korrekt angezeigt.** Im Zirkel und im Raster konnten
|
|---|
| 487 | sie als kaputtes Bild oder leere Kachel erscheinen; sie werden nun als echtes, sich wiederholendes
|
|---|
| 488 | Video angezeigt, das das Quadrat füllt, zentriert. Ein Rechtsklick auf ein Cover zeigt das normale
|
|---|
| 489 | Link-Menü statt der Video-Steuerung des Browsers.
|
|---|
| 490 | - **Jemandem zu folgen bleibt nicht mehr hängen.** Eine Follow-Anfrage, deren erste Zustellung
|
|---|
| 491 | fehlschlägt (der andere Server kurz nicht erreichbar), wird jetzt automatisch mit Backoff erneut
|
|---|
| 492 | versucht, statt für immer auf „ausstehend" zu bleiben.
|
|---|
| 493 | - **Geboostete Beiträge zeigen ihren echten Text** im Zirkel, statt eines „RE: <Link>"-Präfixes.
|
|---|
| 494 | - **Robustere Fediverse-Verarbeitung** — strengere Signaturprüfungen bei eingehenden Aktivitäten,
|
|---|
| 495 | Blockierungen erfassen jetzt auch einen Boost eines blockierten Autors, und die Synchronisierung
|
|---|
| 496 | angehefteter Beiträge kollidiert nicht mehr, wenn du mehrmals schnell speicherst.
|
|---|
| 497 |
|
|---|
| 498 | ## [1.1.0] — 2026-06-30
|
|---|
| 499 |
|
|---|
| 500 | ### Hinzugefügt
|
|---|
| 501 | - **Animierte Cover spielen überall flüssig.** Lade ein animiertes WebP als Cover hoch, und Klonkt
|
|---|
| 502 | erstellt zusätzlich ein stummes, sich wiederholendes Video davon. iOS Safari — wo animiertes WebP
|
|---|
| 503 | ruckelt — bekommt das flüssige Video, jeder andere Browser behält das scharfe WebP, und im Fediverse
|
|---|
| 504 | federiert das Cover als Video, das in Mastodon und seinen Apps abspielt. Sichtbar im Beitrag, im
|
|---|
| 505 | Raster, im Feed und bei verwandten Beiträgen.
|
|---|
| 506 | - **Medienbibliothek (Verwaltung → Medien).** Sieh jedes hochgeladene Bild, wo es verwendet wird,
|
|---|
| 507 | kopiere die URL und räume ungenutzte Dateien mit einem Klick auf — einschließlich des übrigen
|
|---|
| 508 | Videos/Posters eines animierten Covers. Bilder, Audio und Playlists teilen sich jetzt eine Tab-Leiste.
|
|---|
| 509 | - **Teilen-Button** unter jedem Beitrag (natives Teilen-Menü oder Link kopieren).
|
|---|
| 510 | - **Ersetze die Audiodatei eines Tracks**, ohne den Track neu zu erstellen.
|
|---|
| 511 | - **Musik im Fediverse (erster Schritt).** Audio-Beiträge tragen jetzt schema.org *MusicRecording* /
|
|---|
| 512 | *MusicAlbum*-Daten, und ein Schalter pro Beitrag kann einen gehosteten Track als echten
|
|---|
| 513 | Fediverse-Audioanhang teilen, der in den Feeds der Follower abspielt.
|
|---|
| 514 |
|
|---|
| 515 | ### Geändert
|
|---|
| 516 | - **Sauberere Embeds auf Mastodon.** Ein Beitrag mit einem YouTube/Spotify/SoundCloud-Link lässt
|
|---|
| 517 | Mastodon jetzt seine Player-Karte anzeigen; Link-only-Tracks teilen ihre Streaming-Links. Das Cover
|
|---|
| 518 | bleibt in anderen Klonkt-Feeds sichtbar. (Auf deiner eigenen Seite ändert sich nichts — Player und
|
|---|
| 519 | Cover werden wie zuvor angezeigt.)
|
|---|
| 520 | - **Zirkel bleiben auf die Fediverse-Art synchron** — Bearbeitungen und verpasste Beiträge holen über
|
|---|
| 521 | Standard-ActivityPub automatisch auf, sodass ein Zirkel nicht mehr veraltet.
|
|---|
| 522 | - **Alles, was Klonkt federiert, ist jetzt gültiges AS2 / JSON-LD**, durch einen Test abgesichert,
|
|---|
| 523 | damit striktere Server es akzeptieren.
|
|---|
| 524 | - Die Trackliste ist **nach Neueste zuerst** sortiert.
|
|---|
| 525 |
|
|---|
| 526 | ### Behoben
|
|---|
| 527 | - **Animierte WebP-Cover werden nicht mehr auf ein einzelnes Bild eingefroren** (der Zuschneide-Editor
|
|---|
| 528 | und der Thumbnailer machten sie statisch).
|
|---|
| 529 | - **Link-only-Tracks** (Spotify/YouTube, keine hochgeladene Datei) lassen sich wieder in einen Beitrag
|
|---|
| 530 | einfügen.
|
|---|
| 531 | - **Link-Vorschauen** (og:image / Twitter-Karte) verwenden jetzt absolute Bild-URLs, damit sie auf
|
|---|
| 532 | Signal, WhatsApp und anderen Scrapern erscheinen.
|
|---|
| 533 | - Mehrere **Fediverse-Zustellungs-Fixes**: Cover/Links werden auf Mastodon keine schwarze Kachel mehr,
|
|---|
| 534 | rohe Audiodateien überladen keinen Beitrag, der bereits einen Player hat, und tote Links eines
|
|---|
| 535 | umbenannten Remote-Beitrags heilen sich selbst.
|
|---|
| 536 | - Der **mobile Feed** lädt Cover in voller Auflösung; lange Titel brechen um, statt überzulaufen.
|
|---|
| 537 | - **Self-Hosting-Updates** sind zuverlässiger: ein erneuter Lauf des Installers behält deinen Kanal,
|
|---|
| 538 | und der Updater startet nicht mehr neu (oder behauptet kein Update), wenn du bereits aktuell bist.
|
|---|
| 539 |
|
|---|
| 540 | ## [1.0.0] — 2026-06-30
|
|---|
| 541 |
|
|---|
| 542 | ### Hinzugefügt
|
|---|
| 543 | - **Klonkt ist jetzt im Fediverse (ActivityPub).** Deine Seite ist ein echtes
|
|---|
| 544 | Fediverse-Konto: Menschen auf **Mastodon** — oder auf einem anderen **Klonkt** — können
|
|---|
| 545 | dir folgen, und deine Beiträge landen in ihren Feeds. Du kannst Konten folgen und ihre
|
|---|
| 546 | Beiträge in einem **News**-Feed lesen, **Benachrichtigungen** erhalten und Beiträge
|
|---|
| 547 | **liken, teilen und beantworten**. Eingehende Aktivität wird überprüft, sodass gefälschte
|
|---|
| 548 | Antworten, Likes und Follower abgewiesen werden.
|
|---|
| 549 | - **Jede:r kann deine Beiträge aus dem Fediverse beantworten, liken oder teilen** —
|
|---|
| 550 | Besucher:innen interagieren von ihrem eigenen Konto aus (sie geben einfach ihren Server
|
|---|
| 551 | ein); ein Konto auf deiner Seite ist nicht nötig.
|
|---|
| 552 | - **Circles**: Folge anderen **Klonkt**-Seiten und zeigt euch gegenseitig die öffentlichen
|
|---|
| 553 | Beiträge in eurem **Circle** — dezentral, ohne zentrale Plattform.
|
|---|
| 554 | - **Sensible (NSFW) Beiträge** mit eigenem Warnhinweis-Text: auf der ganzen Seite
|
|---|
| 555 | verschwommen mit Klick zum Anzeigen, und im Fediverse als Inhaltswarnung dargestellt.
|
|---|
| 556 | - **Blockiere** ein Konto oder eine ganze Domain, von der du lieber nichts hören möchtest.
|
|---|
| 557 | - Die Suche findet jetzt auch **Tracks** (nach Titel, Künstler:in und Album), direkt aus den
|
|---|
| 558 | Ergebnissen abspielbar mit einem Link zum Beitrag, in dem sie vorkommen — und die
|
|---|
| 559 | Beitragssuche zeigt Treffer schon beim Tippen.
|
|---|
| 560 | - **Live-Theme-Vorschau** in Verwaltung → Seiteneinstellungen: Akzent, Theme und Palette
|
|---|
| 561 | aktualisieren sich sofort, noch bevor du speicherst.
|
|---|
| 562 | - Hochgeladene Bilder werden automatisch zu **WebP** optimiert, für schnellere Seiten.
|
|---|
| 563 | - Ein großzügigeres **mobiles Schreiberlebnis**: Tippe, um einen ablenkungsfreien
|
|---|
| 564 | Vollbild-Editor zu öffnen, wobei die Formatierungsleiste über der Tastatur sichtbar bleibt.
|
|---|
| 565 |
|
|---|
| 566 | ### Geändert
|
|---|
| 567 | - **Paletten auf 8 überarbeitet**: das neutrale **Klonkt** (goldener Akzent) ist der neue
|
|---|
| 568 | Standard, dazu sieben Vollfarb-Themes — **Forest**, **Ocean**, **Teal**, **Lilac**,
|
|---|
| 569 | **Sunset**, **Candy** und **Amber**.
|
|---|
| 570 |
|
|---|
| 571 | ### Entfernt
|
|---|
| 572 | - **Hub-Modus** — **Klonkt** ist jetzt **solo oder Circles**; ein Kollektiv oder Label baust
|
|---|
| 573 | du über **Circles** auf (föderierte, eigenständige Seiten).
|
|---|
| 574 | - **Native Kommentare und Google-Login** — Antworten, Likes und Boosts laufen jetzt komplett
|
|---|
| 575 | über das Fediverse.
|
|---|
| 576 | - **Lokale Favoriten (♥)** — ersetzt durch das ⭐ Fediverse-Like.
|
|---|
| 577 |
|
|---|
| 578 | ### Behoben
|
|---|
| 579 | - Der Mini-Player springt und scrollt zum gerade laufenden Track — auch aus einem Album oder
|
|---|
| 580 | einer Playlist — und hält ihn hervorgehoben.
|
|---|
| 581 | - Leere Album-/Playlist-Cover greifen jetzt auf das Cover des ersten Tracks zurück.
|
|---|
| 582 | - Ein Profilfoto, das nach dem Wechsel zu **WebP** im Header kaputtging, repariert sich nun
|
|---|
| 583 | selbst.
|
|---|
| 584 | - Viele Korrekturen am **mobilen Beitrags-Editor**: zuverlässiges Scrollen, eine
|
|---|
| 585 | Formatierungsleiste, die an Ort und Stelle bleibt, keine Seitensprünge beim Tippen auf eine
|
|---|
| 586 | Schaltfläche, und eine Speicherleiste, die direkt über der Tastatur sitzt.
|
|---|
| 587 |
|
|---|
| 588 | ## [1.0.0-beta.2] — 2026-06-19
|
|---|
| 589 |
|
|---|
| 590 | Erste Veröffentlichung, bei der wir die Version aktiv mitverfolgen (im Fußbereich angezeigt —
|
|---|
| 591 | klick darauf für diese Seite).
|
|---|
| 592 |
|
|---|
| 593 | ### Hinzugefügt
|
|---|
| 594 | - Versionsverfolgung: Die Versionsnummer im Fußbereich verlinkt auf diese Changelog-Seite.
|
|---|
| 595 | - Acht Premium-Funktionen (über **Patreon** freigeschaltet): Newsletter/Mailingliste,
|
|---|
| 596 | Download-für-E-Mail, Veröffentlichungsplanung + Vorschauen nur für Fans, **EPK**/Pressekit,
|
|---|
| 597 | Profi-Statistiken, Link-in-Bio + Klickstatistiken, einbettbarer Player sowie Konzertkalender
|
|---|
| 598 | + Benachrichtigung.
|
|---|
| 599 | - Newsletter-Anmeldefeld im Fußbereich (ein/aus in Verwaltung → Einstellungen).
|
|---|
| 600 | - **SMTP**-Einstellungen in Verwaltung → Einstellungen konfigurierbar (keine Bearbeitung der
|
|---|
| 601 | Konfigurationsdatei mehr nötig), mit einer Test-Mail-Schaltfläche.
|
|---|
| 602 |
|
|---|
| 603 | ### Geändert
|
|---|
| 604 | - Aufgeräumtere Einstellungsformulare (gestapelte Beschriftungen, Eingabefelder in voller
|
|---|
| 605 | Breite).
|
|---|
| 606 | - Das **EPK**/Pressekit zeigt die 10 meistgehörten Tracks.
|
|---|
| 607 | - Schönere 404-Seite (mobilfreundlich) und klarere Login-Fehlermeldungen.
|
|---|
| 608 |
|
|---|
| 609 | ### Behoben
|
|---|
| 610 | - Der seitenweite Audioplayer lud keine Tracks.
|
|---|
| 611 | - Schaltflächentext wurde beim Überfahren unlesbar.
|
|---|
| 612 | - Datumsauswahlen folgen jetzt dem Theme.
|
|---|
| 613 | - Die Vor-/Zurück-Navigation zeigt keinen doppelten Header mehr.
|
|---|