Jump to content

Wikifunctions:Status-Updates/2024-05-22

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

<translate> Abstract Wikipedia via mailing list</translate> <translate> Abstract Wikipedia on IRC</translate> <translate> Wikifunctions on Telegram</translate> <translate> Wikifunctions on Mastodon</translate> <translate> Wikifunctions on Twitter</translate> <translate> Wikifunctions on Facebook</translate> <translate> Wikifunctions on YouTube</translate> <translate> Wikifunctions website</translate> Translate

Neuer Typ: Monate des Gregorianischen Kalenders

The Wheel of Mother Nature: This is Her Image, Frankreich, ca. 1400 n. Chr. Die Zeit befindet sich oben auf dem Rad, ihre vier Flügel sind die Jahreszeiten und die Federn sind die Monate.

Wir sind stolz, unseren ersten Flaggschifftyp für Aufzählungen bekannt zu geben: Monate des Gregorianischen Kalenders.

Die Monate des gregorianischen Kalenders sind eine Aufzählung von zwölf Werten, beginnend mit Januar und Februar und weiter bis November und Dezember. Zu Testzwecken haben wir zunächst zwei Funktionen erstellt: "gleicher Monat", weiter unten als Funktion der Woche beschrieben, und "folgender Monat", die den Monat zurückgibt, der auf den angegebenen Monat folgt.

Wir sind gespannt, welche Funktionen du damit erstellen wirst. Anders als bei natürlichen Zahlen erwarten wir nicht, dass wir sofort eine große Anzahl neuer Funktionen sehen werden – aber wir würden uns sehr freuen, überrascht zu werden! Schließlich werden Monate des Gregorianischen Kalenders als Baustein für Daten des gregorianischen Kalenders verwendet, was die Anzahl der Funktionen erhöht, mit denen dieser Typ verwendet wird.

Vielen Dank an die Wikifunctions-Community für ihre großartige Unterstützung! Als wir diesen Typ erstellten, haben wir lediglich eine kleine Bitte in die englische Beschreibung eingefügt, ihn noch nicht zu verwenden. Und tatsächlich wurde dieser Wunsch größtenteils respektiert, sodass wir noch einen weiteren Fehler beheben konnten, bevor wir ihn heute eingeführt haben.

Bitte informiere uns, wenn es bei der Verwendung des neuen Typs zu Problemen oder Komplikationen kommt. Wir werden die Situation so gut wie möglich im Auge behalten.

Wir hoffen auch, bald weitere Typen für Aufzählungen hinzufügen zu können, insbesondere für Aufzählungen von Monaten in anderen Kalendersystemen. Es wäre großartig, wenn du Vorschläge dafür schreiben könntest, damit wir in ein paar Wochen mit der Erstellung beginnen können. Wenn keine größeren Probleme entdeckt und kleinere Probleme behoben werden, planen wir, in zwei oder drei Wochen mit weiteren Aufzählungen fortzufahren, zunächst für Kalendermonate und dann für andere Bereiche.

Wenn du Fragen hast, kannst du diese gerne stellen! Vielen Dank für deine Mitarbeit und Hilfe bei dieser Einführung.

Letzte Änderungen an der Software

Unsere Hauptarbeit in diesem Quartal dreht sich um die acht Bereiche, die wir zuvor beschrieben haben. Für die Unterstützung von Aufzählungen in Typen haben wir, wie oben erwähnt, eine Fehlerbehebung für die Produktionsdienste eingeführt, die sich darum drehte, Typreferenzen in Objekten nicht einfach auszuwerten, wenn sie in ihrem Typ als Identitäten markiert sind. Damit hoffen wir, wie oben besprochen, dass die Funktionsarbeit hier für das Quartal abgeschlossen ist (T363390), und haben uns auf die anderen Bereiche konzentriert.

Unsere sichtbarsten nächsten Änderungen werden Verbesserungen bei der Anzeige von Bezeichnungen in verschiedenen Sprachen sein (T363383). Die erste Verbesserung hier ist, dass du jetzt den MediaWiki-Fake-Sprachcode qqx als Anzeigesprache verwenden kannst, was dir dabei hilft, Wikifunctions besser zu übersetzen, indem du Objektschlüssel und Benutzeroberflächennachrichten identifizieren kannst; du kannst dies sehen, indem du view/qqx/Z801 aufrufst (T359999).

In anderen Schwerpunktbereichen haben wir im Rahmen unserer allgemeinen Arbeit zur Verbesserung der Tests (T363389) unsere Arbeit zur Rationalisierung, Vereinfachung und sonstigen Verbesserung unserer Browsertests (T349836) fortgesetzt. Wir haben die Steuerung und den Informationsfluss unserer Back-End-Dienste angepasst, um eine bessere Meldung der Metadaten von Unteraufrufen zu ermöglichen (T363384). Im Rahmen unserer Arbeit haben wir auch Probleme mit der Leistung und Verwaltung der Dienste untersucht, um die Produktion besser überwachen zu können (T363387).

Außerhalb unserer Schwerpunktarbeit haben wir die Ladereihenfolge unseres Front-End-Codes optimiert, um gelegentliche Wettlaufsituationen in unseren Abhängigkeiten von MediaWiki zu vermeiden. Unsere Produktionsdienste laufen jetzt auf Node 20 (vorher Node 18) und es wurden verschiedene kleinere Fehlerbehebungen durchgeführt. Unser Code für den Datenbankzugriff in MediaWiki wurde moderner gestaltet und verwendet jetzt an den meisten Stellen die Abstraktionsschicht des Ausdruckgenerators (T350993). Vielen Dank an Umherirrender für diese und viele andere Verbesserungen für Wikifunctions und das breitere Wikimedia-Ökosystem im Laufe der Jahre.

Wir haben unsere Sprachen optimiert und Z1221/nan aktualisiert, um zh-min-nan zu integrieren; unser besonderer Dank geht an Winston Sung für seine federführende Arbeit bei der Bereinigung unserer Sprachunterstützung (T348370).

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

Aufruf zur Erstellung von Funktionen: Ausschreibung von Zahlen!

Letzte Woche haben wir zur Erstellung von Funktionen zur Ausschreibung von Zahlen in verschiedenen Sprachen aufgefordert und wir haben eine Antwort erhalten. Bis jetzt wurden Funktionen für fünfzehn Sprachen erstellt: Bengalisch, Kroatisch, Englisch, Französisch, Deutsch, Igbo, Klingonisch, Plattdeutsch, Malaiisch, Marokkanisches Arabisch, Polnisch, Ukrainisch, Hocharabisch, Schwedisch und Láadan.

Eine Seite für dieses Projekt wurde gestartet und wir freuen uns darauf, die Entwicklung des Projekts zu beobachten. Wenn du Hilfe benötigst, frage einfach!

Wikifunctions im Beta-Cluster defekt

Seit den letzten ein oder zwei Wochen funktioniert Wikifunctions im Beta-Cluster nicht. Wir untersuchen das Problem, wissen aber nicht so recht, woran es liegt. Wir können derzeit nicht vorhersagen, wann das Problem behoben sein wird.

Funktion der Woche: gleicher Monat

Da wir mit Monate des Gregorianischen Kalenders gerade einen neuen Typ eingeführt haben, haben wir auch zwei Funktionen erstellt. Eine sehr nützliche Funktion für jeden neuen Typ ist die Identitätsfunktion, die prüft, ob zwei gegebene Werte gleich sind. Wir haben die Funktion "gleicher Monat" genannt.

Sie verwendet als Eingabe zwei Argumente unseres neuen Typs für Monate des Gregorianischen Kalenders und gibt einen booleschen Wert zurück: wahr, wenn die beiden Monate gleich sind und andernfalls falsch.

Die Identitätsfunktion ist die grundlegendste Funktion für alle Aufzählungen und ermöglicht die Überprüfung des Wertes der Aufzählung. Wir können sie in Aktion in der Komposition für "folgender Monat" sehen, wo elf wenns nacheinander verwendet werden, das Argument mit allen möglichen Werten überprüft wird und dann die entsprechende Antwort zurückgegeben wird (bei dieser speziellen Implementierung tritt derzeit jedoch eine Zeitüberschreitung auf, ein Problem, an dem wir arbeiten).

Für "gleicher Monat" haben wir sechs Tests erstellt (von möglichen 144 Tests, was etwas übertrieben wäre). Wir haben drei Textpaare erstellt, jedes Paar mit einem Test, der wahr zurückgeben soll, und einem, der falsch zurückgeben soll. Die drei Paare wiederum verwenden den Monat einmal als Literal, einmal als Referenz und einmal als gemischten Funktionsaufruf:

  1. Prüfung, dass zwei Literale gleich sind
  2. Prüfung, dass zwei Literale unterschiedlich sind
  3. Prüfung, dass zwei Referenzen gleich sind
  4. Prüfung, dass zwei Referenzen unterschiedlich sind
  5. Prüfung, dass ein Literal und eine Referenz gleich sind
  6. Prüfung, dass ein Literal und eine Referenz unterschiedlich sind

Es gibt zwei Implementierungen für die Funktion, eine in Python und eine in JavaScript. Und obwohl beide sehr ähnlich aussehen – sie verwenden den Identitätsoperator der jeweiligen Sprache, um die beiden Werte zu vergleichen – funktionieren sie in den beiden Sprachen ganz unterschiedlich: In beiden Sprachen wird der eingehende Wert in eine Zahl übersetzt, aber gemäß den Standardbibliotheken beider Sprachen wird in Python der Januar durch eine 1 dargestellt, während in JavaScript der Januar durch eine 0 dargestellt wird.