Changelog (Entwicklung)

Hier finden Sie die in Arbeit befindlichen Änderungen, ggf. sind diese im Updater als "Getestete Vorabversion" mit enthalten. Für veröffentlichte Änderungen siehe Changelog (Release)

Aktuell ist die Version 4.2.1, diese wurde am 15.10.2022 veröffentlicht.

November 2022

Es liegen z.Z. keine unveröffentlichten Änderungen vor.

API

Client

  • Neu: BreakingChange Das Ziel für die TypeScript Compilierung ist jetzt ES6 (ES2015), bisher war es ES5.

    Wir haben die Hinweise für evtl. Codeanpassungen hier zusammengefasst.

    Zudem wir der Code jetzt mit "use strict" Ausgabe generiert.

    Ggf. entfernen wird diese Option für das Release.

  • Neu: BreakingChange Das Interface Kiss.IDisposable wurde um die nicht optionale Eigenschaft "disposing : boolean" erweitert.

    Leitet ihre Implementierung nicht von Kiss.Base ab, muss diese Eigenschaft entsprechend implementiert werden. Bspw.:

      /**
      * (readonly)
      * true ab dem Zeitpunkt, wo ein Aufruf an dispose erfolgt.
      */
      public get disposing(): boolean
      {
      	return this.dispose === Kiss.Constants.emptyFn;
      }
    
      /**
      * Dispose. Wird nur genau 1x ausgeführt, wiederholte Aufrufe sind wirkungslos.
      */
      public dispose(): void
      {
      	this.dispose = Kiss.Constants.emptyFn;
    
        /*YourCodeHere*/
    }
    

    Sie sollten den TypeScript Code kompilieren, achten Sie auf den Fehler:

    TS2345: Argument of type 'XXX' is not assignable to parameter of type 'Kiss.IDisposable'.

    und passen Sie den Code entsprechend obigem Beispiel an.

  • Neu: BreakingChange Das Interface Kiss.Ui.Form.Field.IField wurde um die nicht optionale Methode isEmpty():boolean erweitert.

    Leitet ihre Implementierung nicht von Kiss.Ui.Form.Field.Field ab, muss diese Methode entsprechend implementiert werden. Bspw.:

      /**
      * Gibt an, ob der Inhalt (logisch) leer ist.
      */
      public isEmpty(): boolean
      {
      	return this.value == null;
      }
    

    Sie sollten den TypeScript Code kompilieren, achten Sie auf den Fehler:

    TS2741: Property 'isEmpty' is missing ...

    und passen Sie den Code entsprechend obigem Beispiel an.

  • Neu: Neues Event onModified<void> an IduIT.Core.Kiss.Data.Store

  • Neu: Einige neue Predikate Methoden, die vor allem in array.filter verwendet werden können, null wird dabei aus dem Typ entfernt (TypeGuard).

    • Kiss.Predicates.notEmpty<TValue>(v:TValue|null) : TValue
    • Kiss.Predicates.notDisposed<TValue>(v:TValue|null) : TValue
    • Kiss.Predicates.isDisposed<TValue>(v:TValue|null) : TValue
    • Kiss.Predicates.stringNotEmpty<string>(v:string|null) : string
    • Kiss.Predicates.stringNotEmptyOrWhitespace<string>(v:string|null) : string
  • Neu: die Eigenschaft readOnly wurde aus IduIT.Core.PropertyModel.Ui.Form.Form entfernt.

  • Fix: Der Title eines Windows (MessageBox, Panel) wurde nicht korrekt als Kiss.Ui.Core.IComplexTextWithContent ausgewertet.

  • Neu: Neue Methoden IduIT.Core.Kiss.Ui.Core.withCmpBatchUpdate(callback) sowie beginCmpBatchUpdate, endCmpBatchUpdate, dies kann für Optimierungen verwendet werden, wenn viele Aktionen stattfinden, die das Layout modifizieren.

  • Fix: Im PropertyModel, wenn DependentProperty mit Ziel "visible" auf einen Tab angewendet wurde, wurde dieser beim Sichtbarwerden immer sofort aktiviert, anstatt den nur den Tab-Button anzuzeigen.

  • Fix: Kiss.Lang.Number.format/IduIT.Core.Localization.Format.Number/Kiss.Ui.Form.Field.Number: Bei negativen Zahlen ohne Komma (egal in welchem Format) verdoppelte sich bei der Formatierung das Minus-Zeichen. Dadurch funktionierten negative Zahlen auch im Number-Field nicht, weder per Tastatureingabe, noch per Spinner.

  • Neu: Neue Feld-Komponenten:

    • IduIT.Core.Kiss.Ui.Form.Field.CheckboxGroup
    • IduIT.Core.Kiss.Ui.Form.Field.RadioGroup
  • Neu: Neue Eigenschaft descriptionPos (siehe Enum IduIT.Core.Kiss.Ui.Form.EDescriptionPos) für Kiss.Ui.Form.Item.

  • Neu: Bei falscher Verwendung von Menu-Buttons mit Untermenus wird im Debug eine Warnung im Trace mit Korrekturhinweise generiert.

Admins

  • Neu: Im Dashboard gibt es für die selbstregistrierten Nutzer einige neue Funktionen: an Benutzer, die die Aktivierung verpasst haben, kann die E-Mail zur Aktivierung erneut versendet werden. Benutzer, die die Registrierung nicht abgeschlossen haben, können gelöscht werden.

Systemeinstellungen cardo4

  • Neu: In den Profilen der Nutzer-Selbstregistrierung kann jetzt für den Schritt zwei - also die Aktivierung - ein abweichender Titel, Kopf und / oder Fuß für die Webseite hinterlegt werden.

Puzzle

  • Neu: in der Workbench ist eine neue Aktion vorhanden, die aus dem IKX Klassenmodell eines Stores passende C# Klasse für den Datenzugriff generiert.

PiB

  • Neu: Performance-Optimierung der Methode GetProcessObjectsWithRelatedPibObjects (bspw. für das Abrufen der Vorgangs-Liste)

Server

  • Neu: Für die Eigenschaft MergeConfig der Methode GetMerge des ORM Handler kann ein PreSQL übergeben werden (Bspw. für WITH - Klauseln)

  • Neu: Neue Extension-Methoden in IduIT.Core.Extensions:

    • AppendIf(AppendIf(this System.Text.StringBuilder bld)
    • HtmlToPlainText(this string html)

3rd Party

  • Update externer Bibliotheken:
    • TypeScript 4.8 zu 4.9
    • TSLib 2.4.0 zu 2.4.1
    • MonacoEditor 0.34.0 zu 0.34.1
    • Pako 2.0.4 zu 2.1.0
    • NodaTime 3.1.4 zu 3.1.5
    • Fontawesome 6.2.0 zu 6.2.1
    • Scriban 5.5.0 zu 5.5.1

Zuletzt geändert: 23.11.2022 15:38:18 (erstmals erstellt 29.12.2017)