[ERLEDIGT] Probleme bei der Erstellung von Diagrammen in Gladys+

Danke für dein Feedback heute Morgen @spenceur, das hat mir sehr geholfen, da ich den Bug mit deinem JSON reproduzieren konnte!

Tatsächlich war dein JSON 200 KB groß (vor gzip), und ich habe einen lokalen Test durchgeführt. Dabei trat der Fehler « Max call stack exceeded » auf, als ich versuchte, das JSON während der Entschlüsselungsphase zu verschlüsseln/entschlüsseln.

Der Grund dafür war die Funktion, die die Umwandlung der entschlüsselten Nachricht (ein ArrayBuffer) in einen String durchführte.

Bisher habe ich eine selbstgeschriebene Funktion verwendet, um diese Umwandlung von ArrayBuffer in String durchzuführen. Allerdings gibt es seit einiger Zeit eine Klasse in allen Browsern, die diese Umwandlung ermöglicht. Daher bin ich auf die native Klasse umgestiegen :slight_smile:

Ich habe einen Pull Request erstellt, falls es dich interessiert:

Ich halte dich auf dem Laufenden, wenn es in Gladys geht!

Okay, es ist nicht so einfach, meine Änderung zerstört die Zeichenkodierung von Sonderzeichen (Akzente, Emojis, etc.)

Ich führe die Untersuchung fort

A l’ancienne :slight_smile: é

Eigentlich habe ich herausgefunden, dass man, um über die Browser-API « TextDecoder » zu gehen, zwangsläufig über die API « TextEncoder » gehen muss, um einen homogenen Inhalt zu erhalten! Gleichzeitig ist das logisch :slight_smile: Ich habe Tests mit Sonderzeichen (Akzent / Emoji) durchgeführt und es funktioniert.

Daher, um eine sanfte Migration ohne Probleme bei bestehenden Instanzen zu gewährleisten, habe ich den neuen Mechanismus programmiert, aber ihn unter eine Flagge gestellt. Dadurch sind die Gladys-Instanzen alle bereit, diese « neuen Gladys Plus-Payloads » zu decodieren, aber sie codieren noch nicht in diesem Format.

Ich werde eine Veröffentlichung in 2 Versionen durchführen:

    1. Veröffentlichung: Der Code kommt auf die Maschinen und auf das Gladys Plus-Frontend, aber ist nicht aktiviert
    1. Veröffentlichung, sobald alle auf die 1. Veröffentlichung umgestiegen sind: Wir aktivieren die Flagge auf Gladys- und Gladys Plus-Seite. Da alle bereits den Code haben, muss nur noch in den Nachrichten überprüft werden, ob die Flagge vorhanden ist :slight_smile:

Der Code mit der Flagge ist hier verfügbar:

Zur Information @spenceur, Gladys Assistant v4.8.2, heute Morgen veröffentlicht, ist die erste Version.

Diese Version behebt deinen Bug nicht! :smiley:

Diese Version bringt nur die neue Codierungsfunktion, die anschließend über das Setzen eines Flags in einer zukünftigen Version aktiviert wird, und zwar nur, wenn alle Instanzen auf dem neuesten Stand sind und die Funktion tatsächlich haben.

Der Gedanke, das in zwei Versionen zu machen, ist, Gladys Plus nicht zu beschädigen, sondern das sanft und ohne Dienstunterbrechung zu tun.

Weitere Informationen:

@spenceur Alles klar, der Fix ist mit Gladys Assistant v4.8.3 veröffentlicht :slight_smile: Ich habe den Payload, den du mir nach unserem Call geschickt hast, bei mir zu Hause getestet, und das Problem ist behoben!

Lass mich wissen, ob es bei dir funktioniert, sobald du auf v4.8.3 bist. Auf der Seite plus.gladysassistant.com musst du die Seite möglicherweise neu laden, um die neueste Version der PWA zu erhalten!

Ja, kein Problem, sobald mein Internet wieder da ist. Ein Techniker sollte heute Morgen vorbeikommen, aber keine Neuigkeiten ^^'.
Ich halte dich auf dem Laufenden!

Hallo @spenceur! Hast du es seitdem nochmal getestet? :slight_smile:

Hallo!
Ich hatte dich nicht vergessen, aber ich hatte keinen PC zur Hand, um es auszuprobieren!

Auf dem Mac funktioniert nach dem Leeren des Caches alles okay ^^
Auf dem Android-Handy gibt es aber immer noch das gleiche Problem, aber wahrscheinlich ein Cache-Problem ^^

Tolle Arbeit, ich helfe, wie ich kann, bei dieser gladys4 :slight_smile:

Toll! Das ist cool :slight_smile:

Wahrscheinlich ein Cache-Problem, ja. Die PWA aktualisiert sich im Hintergrund automatisch, aber das kann etwas dauern. Normalerweise bist du nach 1-2 Aktualisierungen auf der richtigen Version, es wird schon kommen. :wink: