Jump to content

Wikifunctions:Status-Updates/2024-08-16

From Wikifunctions
This page is a translated version of the page Wikifunctions:Status updates/2024-08-16 and the translation is 100% complete.
Wikifunctions Status-Updates Translate

Abstrakte Wikipedia über Mailingliste Support-Team Abstrakte Wikipedia auf IRC Wikifunctions auf Telegram Wikifunctions auf Mastodon Wikifunctions auf Twitter Wikifunctions auf Facebook Wikifunctions auf Youtube Website von Wikifunctions Translate

Wikimania 2024

Galder Gonzalez präsentiert mögliche Wege, wie die Abstrakte Wikipedia dazu beitragen könnte, den philosophischen Traum einer "universellen Sprache" zu verwirklichen.

Die Präsentation “Abstrakte Wikipedia und der Traum einer universellen Sprache” führte uns durch die Geschichte des Wunsches nach einer Universalsprache. Die Präsentation untersuchte die historischen Bemühungen für eine Universalsprache und betonte ihren langfristigen, generationenübergreifenden Charakter. Sie hob die Herausforderungen hervor, die verhinderten, dass die Idee sofort Fuß fasste, wie etwa unzureichende Anstrengungen und die Unfähigkeit, sich auf eine gemeinsame Sprachstruktur zu einigen. Darüber hinaus wurde in dem Vortrag darauf hingewiesen, dass bestimmte prominente Weltsprachen unbeabsichtigt begannen, als De-facto-Universalsprachen zu fungieren, wodurch die Dringlichkeit der Schaffung einer wirklich einheitlichen globalen Sprache abnahm. Es wurde auch erörtert, wie die Bemühungen des Teams Abstrakte Wikipedia zusammen mit anderen Teams innerhalb der Foundation auf dieses Ziel ausgerichtet sind. Um dir die gesamte Präsentation anzusehen, besuche bitte unseren öffentlichen YouTube-Link.

Sitzung 'Wikifunctions-Tutorial' von unserem technischen Leiter James Forrester

Wie bereits in unserem Newsletter erwähnt, hat unser Team zwei Sitzungen abgehalten. Im 90-minütigen 'Wikifunctions-Tutorial' haben wir dem Publikum die Grundlagen von Wikifunctions, seinen Zweck und praktische, unkomplizierte Möglichkeiten zur Beteiligung vorgestellt. James Forrester, unser technischer Leiter, und Nicolas Vigneron, ein sehr aktives Community-Mitglied mit über 10 Jahren Erfahrung in der Unterstützung unserer Projekte, haben die Teilnehmer durch die Erstellung ihrer eigenen Funktionen auf Wikifunctions geführt und während des gesamten Prozesses Unterstützung und Fehlerbehebung angeboten. Um dir die gesamte Präsentation anzusehen, besuche bitte unseren öffentlichen YouTube-Link.

Unser Community-Koordinator Luca Martinelli präsentiert den 'Status von Wikifunctions'

Während unserer 30-minütigen Präsentation 'Status von Wikifunctions' stellten wir das Konzept der Abstrakten Wikipedia vor und erklärten, wie Wikifunctions darin integriert ist. Wir gaben einen Überblick über die Rolle der Plattform bei der Ermöglichung einer umfassenderen und mehrsprachigen Wissensbasis. Darüber hinaus präsentierten wir mehrere wichtige Verbesserungen und Projekte aus dem vergangenen Jahr, von technischen Verbesserungen bis hin zu Community-gesteuerten Initiativen. Mit Blick auf die Zukunft skizzierten wir unsere Pläne zur Weiterentwicklung der Plattform, wobei wir uns auf die Erweiterung der Funktionalität und die Stärkung der Zusammenarbeit mit Beitragenden weltweit konzentrierten. Um dir die gesamte Präsentation anzusehen, besuche bitte unseren öffentlichen YouTube-Link.

Letzte Änderungen an der Software

Dieses Update deckt die Aktivitäten der letzten zwei Wochen ab, da wir letzte Woche während der Wikimania kein Update veröffentlicht haben. Die Woche vor der Wikimania war eine unserer regelmäßigen "Reparatur"-Wochen, bei der wir alle zwei Monate eine Woche damit verbringen, an technischen Rückständen zu arbeiten. Letzte Woche haben wir auch mehrere Fehler behoben.

Was benutzerorientierte Funktionen angeht, haben wir derzeit keine Längenbeschränkung für Bezeichnungen und Beschreibungen. Daher haben wir Code hinzugefügt, um eine Beschränkung der Länge von Bezeichnungen und Kurzbeschreibungen in der API durchzusetzen (T343767). Diese ist zunächst sehr hoch, damit alle vorhandenen Funktionen und Objekte weiterhin gespeichert werden, aber wir werden sie reduzieren, sobald die Seiten im Wiki angepasst sind (T371882).

Wir haben geändert, wie wir Sprachobjekte aus unserer Cache-Datenbanktabelle abrufen, um einen Fehler zu beheben, der dazu führte, dass einige Sprachcodes wie 'lv' die UX störten, ihr anderer Code (in diesem Fall 'lvs') jedoch wie erwartet geladen wurde (T372052 und T372086). Vielen Dank an User:Papuass für die Meldung dieses Problems! Wir haben auch die Art und Weise korrigiert, wie der Titel auf der Seite angezeigt wird, wenn du den Info-Dialog verwendest, um die Bezeichnung in der Sprache deiner Benutzeroberfläche hinzuzufügen oder zu entfernen, sodass je nach Bedarf ein Sprach-'Chip' entfernt oder angezeigt wird (T361715). Wir haben die Codierung von Pipe-Zeichen in einem Randfall korrigiert, sodass sie durch die API weitergegeben werden können – entschuldige die Verzögerung bei diesem Randfall (T358089).

Wir haben den gesamten Fehleremissions- und -behandlungsstapel zwischen MediaWiki und dem Vue-Front-End neu geschrieben, um ihn konsistenter und zugänglicher zu machen (T345010 und T361683). Wir haben festgestellt, dass einige Tests, die zuvor im Beta-Cluster nicht funktionierten, jetzt wieder funktionieren, also haben wir sie wieder aktiviert, einschließlich der Tests, die wir nach der Änderung der Funktionsweise des Python-Runners (T361125) und des Fehlers bei der Auswahl der Programmiersprache (T361124) durchgeführt haben. Wir haben auch unsere Codeabdeckung in einigen Teilen der Codebasis erweitert und einige Optimierungen an der README-Datei und den Setup-Skripten vorgenommen, um die lokale Entwicklung zu erleichtern (T371652 und T371896).

Wir und der gesamte von Wikimedia bereitgestellte Code verwenden seit dieser Woche die neueste Version der Codex UX-Bibliothek, v1.11.0. Es sollte keine für den Benutzer sichtbaren Änderungen an Wikifunctions geben. Kommentier daher bitte in der Projektdiskussion oder erstelle einen Phabricator-Task, wenn du ein Problem entdeckst.

Schließlich haben wir das Haupt-'Modul'-Verzeichnis des ResourceLoader von "ext.wikilambda.edit" in "ext.wikilambda.app" umbenannt. Dies spiegelt wider, dass der ursprüngliche Umfang des Codes in den letzten vier Jahren erweitert wurde und nun nicht mehr nur bearbeitet, sondern auch Funktionen und Objekte anzeigen kann.

Änderung der Implementierungsauswahl aufgrund einer Diskussion der Community

Basierend auf Rückmeldungen und Diskussionen mit Community-Mitgliedern haben wir den Algorithmus geändert, nach dem die Implementierungen einer Funktion sortiert werden. Implementierungen werden (ungefähr) nach ihrer Ausführungsgeschwindigkeit sortiert, und in den meisten Einstellungen wählt Wikifunctions die schnellste Implementierung aus, um angeforderte Funktionsaufrufe zu verarbeiten. Dank der Rückmeldungen der Community wurde uns bewusst, dass Wikifunctions manchmal Implementierungen mit längerer Laufzeit auswählte, was zu unnötig langen Wartezeiten (und sogar Timeouts) für Funktionsergebnisse führte. Wir erkannten, dass diese kontraintuitiven Auswahlen auftraten, weil die Sortierung auf der von jeder Implementierung verwendeten CPU-Zeit basierte. Die Benutzererfahrung ist viel stärker auf die verstrichene Zeit abgestimmt, daher haben wir den Algorithmus geändert, um diese anstelle der CPU-Zeit zu berücksichtigen.

Wir freuen uns über die Rückmeldungen und die umfangreiche Hilfe der Community bei der Identifizierung und dem Verständnis dieses Problems! Einige der Diskussionen fanden im Phabricator-Task T363908 und einige auf Telegram statt. Es ist zu beachten, dass der Sortieralgorithmus auch die Anzahl der erfolgreichen Testausführungen berücksichtigt. Außerdem ist es möglich, die Ausführung eines Funktionsaufrufs mithilfe einer bestimmten Implementierung anzufordern. Für weitere Details siehe bitte Sortierung und Auswahl der Implementierung.

Funktion der Woche: X11-Farbe in Hexadezimalcode

Für die aktuelle Funktion der Woche wollte ich eine Funktion auswählen, die während unserer Wikimania-Woche erstellt wurde. Diese Funktion verwendet eine X11-Farbe als Zeichenketten-Eingabe und gibt den entsprechenden Hexadezimalcode als Ausgabe zurück.

Eine X11-Farbe ist eine benannte Farbe aus dem standardisierten Satz des X Window Systems, die häufig im Webdesign und bei grafischen Benutzeroberflächen verwendet wird. Eine Funktion, die X11-Farbnamen in hexadezimale Werte umwandelt, hat mehrere praktische Anwendungen. Sie ist offensichtlich im Webdesign und in der Entwicklung nützlich, wo sie Entwicklern dabei helfen kann, X11-Farbnamen schnell in Hexadezimalcodes zu übersetzen, um sie auf allen Websites einheitlich zu verwenden und so die Kompatibilität mit CSS-Standards sicherzustellen.

Design-Werkzeuge können ebenfalls davon profitieren, da Designer Farben nach Namen auswählen können, die dann in hexadezimale Werte umgewandelt werden, um sie beim Teilen digitaler Inhalte und bei der Zusammenarbeit zwischen Designern und Entwicklern innerhalb eines Projekts einfach verwenden zu können. Außerdem kann die Funktion in Anwendungen integriert werden, in denen Benutzer aus einer Reihe vordefinierter Farben auswählen können, die sich nahtlos in hexadezimale Werte umwandeln lassen.

Diese Funktion hat eine verbundene Implementierung in JavaScript und eine ähnliche, noch zu verbindende Implementierung in Python. Die verbundene JavaScript-Implementierung verwaltet eine Liste aller X11-Farben und ihrer entsprechenden hexadezimalen Werte und gibt diese basierend auf der eingegebenen X11-Farbe aus.

Die Funktion verfügt außerdem über 4 Tests (1, 2, 3, 4), die die Funktion für vier verschiedene Farbeingaben überprüfen. Diese Funktion ermutigt uns auch, uns eine Implementierung vorzustellen, die dynamischer ist und einen Datensatz verwendet, der zur Laufzeit verfügbar ist.