ubuntuusers.de

Update: Monatlich grüßt das Schlangentier: Neuerungen in Inyoka im März 2011

ubuntuusers.png

Nachdem das Webteam letztes Wochenende ein „Inyoka Hackfest” in Rothmannsthal gefeiert hat und dabei viel an Inyoka gearbeitet hat, ist die Liste der Änderungen, die auf die Anwender zukommen, groß geworden. Um die vielen Neuerungen in das produktive System zu integrieren, wird ubuntuusers.de am heutigen Samstag ab 23 Uhr für circa eine Stunde nicht erreichbar sein.

Neun Leute, also so ziemlich das gesamte Webteam plus einem Abgesandten der Projektleitung haben unter weiblicher Aufsicht am letzten Wochenende von Freitag bis Sonntag an Inyoka und dessen Umgebung gearbeitet, einiges an Lebensmitteln vernichtet und das Wort „Schlafen” aus dem Vokabular verbannt. Dabei sind einige interessante Ideen entstanden und viele längerfristige Arbeiten wurden angefangen. Dieser Artikel soll ein wenig über das Hackfest berichten und die Änderungen aufzählen, die auf die Anwender zukommen.

Allgemeines

Allein am letzten Wochenende wurden 250 Dateien und rund 12.000 Codezeilen angefasst, die Zusammenfassung des gesamten Monats sieht ähnlich aus und besteht ansonsten hauptsächlich aus Fehlerbehebungen. Somit besteht Inyoka weiterhin aus rund 60.000 Codezeilen, wovon durch Aufräumarbeiten einige hundert nach und nach wegfallen.

Größere Änderungen

Django 1.3

Am Wochenende hat das Webteam Inyoka auf das neueste Release von Django portiert und im gleichen Zug viele Stellen im Code klarer strukturiert und verbessert. So wurden viele Administrationsviews durch Djangos generic-views 🇬🇧 ersetzt und die neuen Funktionen, die das 1.3er Release mitbringt, gleich – soweit möglich – integriert.

Distributed Task Queues

Viele Aufgaben in Inyoka erfordern das Aufrufen externer Ressourcen, Prozesse oder längerfristige Arbeiten. Diese Aufgaben werden nun nicht mehr „im Request” (also direkt nacheinander) abgearbeitet, sondern in einer „Task-Queue” gespeichert und außerhalb des Requests ausgeführt. Dadurch fallen in vielen Bereichen unnötige Wartezeiten weg und viele Störquellen für die nervigen 504er wurden somit entfernt. Es wurde somit nun auch ein Framework geschaffen, welches ermöglicht noch mehr Funktionen zu integrieren ohne die Benutzeroberfläche unnötig langsam zu machen oder um die Cron-Scripte aufzufrischen und in regelmäßigeren Abständen mit ordentlichen Monitoring laufen zu lassen. Als Bibliothek zur Implementierung der Task-Queue benutzen wir Celery 🇬🇧.

Das gesamte Benachrichtigungssystem wurde weiterhin überarbeitet und auf Basis der neuen Task-Queues neu geschrieben. Somit fallen auch unnötige Wartezeiten beim Editieren oder Neuschreiben eines Beitrages weg und Benachrichtigungen werden noch schneller abgearbeitet.

Sonstige Änderungen

Die Liste der Änderungen im Allgemeinen ist riesig, daher kann an dieser Stelle nur ein kleiner Ausschnitt gezeigt werden. Nachfolgend unsortiert und unvollständig:

  • Ausstehende Fehler bei Opera-Benutzern bezüglich der Farbverläufe im Forum wurden behoben (#284)

  • In Ikhaya kam es bei Bildern, die mit der Ausrichtung links eingebunden wurden zu Darstellungsproblemen (#326).

  • Nur wenn es mehrere Empfänger einer „Privaten Nachricht“ gibt, erscheint nun die Option An alle Antworten

  • Bei statischen Seiten wird nun auch die Inyoka-Syntax verwendet (#371)

  • Überarbeitung der Benachrichtigungsfunktion und der Rechtsschreibfehler melden-Funktion in Ikhaya.

  • Bei kürzeren Ikhaya-Artikeln gab es zum Teil einen größeren Abstand zwischen dem Artikel und den Kommentaren. (#367)

  • Bilder konnten im Planeten das Seitenlayout sprengen, wenn diese zu groß waren (#275)

  • Die Helmgrafik für Entwicklungsversionen verrutschte in Chromium (#373)

  • Eine Änderung bei der Wortwahl: Es wird in Inyoka jetzt nicht mehr von „Editieren“ sondern von „Bearbeiten“ gesprochen.

  • Verborgene Beiträge und Topics werden nun niemandem mehr angezeigt, der keine Moderationsrechte hat ( #378)

  • Beim [[ToteLinks()]]-Makro wird nun auch die Anzahl der toten Links angezeigt (#339)

  • Das Phänomen, dass Bilder in Ikhaya mal angezeigt wurden und mal nicht, hat ein Ende. Es wurden Anpassungen im Parser vorgenommen (#341)

  • Es gibt nun auch die Möglichkeit, Ikhaya-Artikel auf der Ikhaya-Seite nicht mehr nur mit der Einleitung zu sehen, sondern in voller Länge (#231)

  • Die Darstellung besonders länger Threads (z. B. DLTDW) wurde optimiert und diese sind nun wieder aufrufbar (#376)

  • Ein Fehler im Makro „Fehlende Seiten“ wurde behoben.

  • Besuchte Links werden jetzt auf der Diff-Wikiseite richtig dargestellt (#356)

  • Es wurden Änderungen bei der Skalierung von Bildern vorgenommen, damit Fehler wie in #280 beschrieben, nicht mehr auftauchen.

  • Dateianhänge konnten unter bestimmten Umständen im Wiki nicht angezeigt werden (#283)

  • Blogs welche vom Planeten nicht mehr indiziert werden, werden nun optisch für die Administration anders dargestellt (#375). Außerdem wurde bei der administrativen Ansicht der Unterbau modifiziert.

  • Es wurden Optimierungen und Vereinfachungen bei der Handhabung von Benutzersessions eingebaut.

  • Anpassungen beim Ansprechen der Datenbank, so dass neben MySQL auch PostgreSQL und SQLite unterstützt werden können.

  • Überarbeitung des Bearbeitungsformulars eines Ikhaya-Artikels.

  • Wenn ein Icon zu einer Kategorie in Ikhaya gelöscht wurde, wurden gleichzeitig die Artikel dieser Kategorie gelöscht. In diesem Zuge wurden auch andere Löschfunktionen, wie Kalender- und Forenbeiträge, überarbeitet.

  • Das Einstellen der Kalenderbeiträge wurde überarbeitet.

  • Die Rechte als Moderator eines Forums wurden überarbeitet und strikter definiert (#343)

Abschließend möchte das Webteam wie immer auf die Zeitleiste im Trac sowie auf die Übersicht aller im März 2011 geschlossenen Tickets verweisen und sich bei allen fleißigen Testern und Fehlermeldern bedanken!

Nochmals der Hinweis: Um die vielen Neuerungen in das produktive System zu integrieren, wird ubuntuusers.de am heutigen Samstag ab 23 Uhr und am morgigen Sonntag gegen 2:00 Uhr für circa eine Stunde nicht erreichbar sein.

Update (01:40): Die oben angesprochenen Änderungen sind nun nach einer größeren Verzögerung produktiv.


Ein herzliches Dankeschön geht an EnTeQuAk für die Einsendung dieses Artikels!