Skip to content

Version 1.2

Latest
Compare
Choose a tag to compare
@Korne127 Korne127 released this 31 May 21:47
v1.2
2d72868

Neue Features:

  • Die Einstellungsmöglichkeit, generierte JSON-Strings zu komprimieren, wurde hinzugefügt

Allgemeine Verbesserungen:

  • Wenn Strings, Klassen aus SpecialClasses oder primitive Datentypen direkt serialisiert werden, werden sie jetzt korrekt kodiert zurückgegeben
  • Strings, Klassen aus SpecialClasses und primitive Datentypen werden jetzt in so einem Fall immer korrekt direkt deserialisiert
  • Falls versucht wird, einen fehlerhaften String zu deserialisieren, wird nun eine JsonParseException geworfen
  • Falls ein Sonderzeichen wie z.B. ein Zeilenumbruch in einem Character gespeichert wird, wird dieser nun auch escaped (wie er bereits im String escaped wurde)
  • Falls sich Whitespace vor oder nach dem Json befindet, wird dies nun ignoriert

Bugs behoben:

  • Wenn vorher ein Zeilenumbruch oder ein Tabulator als char gespeichert wurde, führte dies zu einer Exception beim Deserialisieren; dies wurde nun behoben

Rückwärtskompatibilität

Die Rückwärtskompatibilität zu Versionen 1.0 und 1.1 ist sehr hoch (5/6).
Falls ein JSON-String, der durch eine vorherige Version erstellt wurde, mit Version 1.2 deserialisiert werden soll, kommt es in den allermeisten Fällen zu keinen Problemen.
Die Rückwärtskompatibilität ist lediglich in dem folgenden Fall eingeschränkt:

  • Falls Strings, Klassen aus SpecialClasses oder primitive Datentypen in einer vorherigen Version direkt serialisiert wurden, lässt sich dies nicht mehr mit Version 1.2 deserialisieren; es kommt zu eine JsonParseException

Auch wenn bestimmte Sonderzeichen in Chars in Version 1.2 anders serialisiert werden, können die alten Versionen immer noch korrekt deserialisiert werden (außer Zeilenumbrüche und Tabulatoren, aber diese konnten auch bei vorherigen Versionen nicht deserialisiert werden, siehe Bugs behoben). Da diese Sonderzeichen allerdings nun anders serialisiert werden, wäre die Rückwärtskompatibilität, mit Version 1.2 erstellte JSON-Strings mit Version 1.1 zu deserialisieren nur mittel (3/6).