[general]
* New reports no longer store the report data source in the report template by default. You can change this option in the report's Document Properties, however be aware that this gives anyone with the report template full access to your data source
* New implementation of the Datasource Manager
* Redis support as cloud persistence backend was removed. If you use it then migrate to MongoDB before you update
* Cloud synchronization and events to run i-net Clear Reports shared across several cloud nodes added
* Let's Encrypt protocol version ACMEv2 supported. The Let's Encrypt protocol version ACMEv1 will be end of support on November 1st, 2020. If you use Let's Encrypt certificates for HTTPS then you need this update

[general:de]
* Bei neuen Berichten wird die Berichtsdatenquelle nicht mehr standardmäßig in der Berichtsvorlage gespeichert. Sie können diese Option in den Dokumenteigenschaften des Berichts ändern. Beachten Sie jedoch, dass dadurch jeder, der die Berichtsvorlage verwendet, vollen Zugriff auf Ihre Datenquelle erhält
* Neue Implementierung des Datasource Managers
* Die Unterstützung von Redis als Cloud-Persistenz-Backend wurde entfernt. Wenn Sie Redis verwenden, migrieren Sie vor dem Update auf MongoDB
* Cloud-Synchronisierung und Ereignisse zur Ausführung von i-net Clear Reports über mehrere Cloud-Knoten hinweg hinzugefügt
* Let's Encrypt Protokoll Version ACMEv2 wird unterstützt. Die Let's Encrypt-Protokollversion ACMEv1 wird ab dem 1. November 2020 nicht mehr unterstützt. Wenn Sie Let's Encrypt-Zertifikate für HTTPS verwenden, benötigen Sie dieses Update

[changes]
* The "External visible URL" being used for the EHLO command when connecting to an SMTP server
* Any subdomain (like *.example.com) on "Allowed Cross Origins" supported
* PDF export: Dejvu-Sans is used as default font for font embedding if no other font is available in the font path
* Fix the recognition of value data types for JSON data sources if the source files contain white spaces
* Null values in JSON data source supported
* New data Sources will be saved in the new application scope now
* The property "driverLibrary" has been removed from the list of properties for Data Sources. Additional drivers for databases have to be provided using the "lib" directory of the installation
* Thai support for the formula function ToWords
* Add Engine.SetData to the .NET process bridge
* Persistence Repository implementation added
* Benchmark for CPU and IO rating added in Maintenance application
* Engine.SetData added to the .NET process bridge

### Task Planner
* XML export added to the task planner
* Prompt values added as placeholder that can be used for example for report name or in email action.
* It is now supported to set "Delete previous results after X days" for a file action. With this property it is possible for example to delete old backups

### Data Source Manager
The Data Source Manager has been reworked from the ground up and comes with an all-new Remote GUI interface. It now supports assigning datasource permissions to specific user groups

* Completely new Data Source Manager Interface
* New Data Sources will always be created in the Application Scope
* Existing Data Sources in the former User/System/Temp/Session - Scopes will be readonly in the Remote GUI
* Assigning user group permissions to datasources can be performed by users with the *User Manager* permission.
* Data Sources can be __exported__ individually using the cards menu and multiple Data Sources can be exported using Click and CTRL+Click / CMD+Click to select and then using the top menu "*Export*" Button
* The __Import__ (top menu → Add → Import)  of Data Sources will always create the new Data Sources in the editable Application Scope
* The former *Scopes* are available via API only. The Remote Interface only displays the indirectly using the "visibility" entry in the Data Source card
* Default value of the property "Supports SQL92" in a new Oracle datasource is true now

[changes:de]
* Die "Externe sichtbare URL", die für den EHLO-Befehl bei der Verbindung mit einem SMTP-Server verwendet wird
* Jede Subdomain (wie *.example.com) auf "Allowed Cross Origins" wird unterstützt
* PDF-Export: Dejvu-Sans wird als Standardschriftart für die Schrifteinbettung verwendet, wenn keine andere Schriftart im Schriftartenpfad verfügbar ist
* Korrektur der Erkennung von Wert-Datentypen für JSON-Datenquellen, wenn die Quelldateien Leerzeichen enthalten
* Nullwerte in JSON-Datenquellen werden unterstützt
* Neue Datenquellen werden nun im neuen Anwendungsbereich gespeichert
* Die Eigenschaft "driverLibrary" wurde aus der Liste der Eigenschaften für Data Sources entfernt. Zusätzliche Treiber für Datenbanken müssen über das "lib"-Verzeichnis der Installation bereitgestellt werden
* Thai-Unterstützung für die Formelfunktion ToWords
* Hinzufügen von Engine.SetData zur .NET Prozessbrücke
* Persistence Repository Implementierung hinzugefügt
* Benchmark für CPU- und IO-Bewertung in der Wartungsanwendung hinzugefügt
* Engine.SetData zur .NET-Prozessbrücke hinzugefügt

### Aufgabenplaner
* XML-Export zum Task-Planer hinzugefügt
* Prompt-Werte als Platzhalter hinzugefügt, die z.B. für Berichtsnamen oder in E-Mail-Aktionen verwendet werden können.
* Es wird nun unterstützt, "Vorherige Ergebnisse nach X Tagen löschen" für eine Datei-Aktion zu setzen. Mit dieser Eigenschaft ist es zum Beispiel möglich, alte Backups zu löschen

### Datenquellen-Manager
Der Datenquellen-Manager wurde von Grund auf überarbeitet und verfügt nun über eine völlig neue Remote-GUI-Schnittstelle. Er unterstützt jetzt die Zuweisung von Datenquellenberechtigungen an bestimmte Benutzergruppen

* Völlig neue Schnittstelle des Datenquellen-Managers
* Neue Datenquellen werden immer im Anwendungsbereich erstellt
* Bestehende Datenquellen in den bisherigen User/System/Temp/Session - Scopes werden in der Remote GUI schreibgeschützt
* Die Zuweisung von Benutzergruppenberechtigungen für Datenquellen kann von Benutzern mit der Berechtigung *User Manager* durchgeführt werden.
* Datenquellen können einzeln über das Kartenmenü __exportiert__ werden, und mehrere Datenquellen können mit Klick und STRG+Klick / CMD+Klick zum Auswählen und dann über die Schaltfläche "*Export*" im oberen Menü exportiert werden
* Der __Import__ (oberes Menü → Hinzufügen → Importieren) von Datenquellen wird die neuen Datenquellen immer im editierbaren Anwendungsbereich erstellen
* Die früheren *Scopes* sind nur über die API verfügbar. Die Remote-Schnittstelle zeigt nur indirekt über den Eintrag "Sichtbarkeit" in der Datenquellenkarte an
* Standardwert der Eigenschaft "Unterstützt SQL92" in einer neuen Oracle-Datenquelle ist jetzt true

[bugfixes]
* Possible deadlock on startup occurred if a custom configuration was set via "clearreports.config" or "clearreports.configfile"
* Permission check with Authentication Groups for logged in users was wrong
* Multiple values in the property "Other VM Arguments" in configuration dialog "Web Server" were not supported
* Rare rounding error occurred when the scale of a number was reduced by more than 9 digits in a formula function
* Access to the repository with Login using WebDav has not worked on Windows
* OutOfMemory or ReportCache errors occurred because of problems with false positive low memory detection. The log output contains the warning: "There was a low memory situation and possibly some jobs were canceled." and maybe other subsequent errors
* Security issue "Cross-Site Scripting" occurred
* Unknown operation: `com.inet.report.renderer.doc.controller.bk@0` occurred with `TotalPageCount` (NofM) in subreports
* Property `RELOAD_ON_NEW_REQUEST` does not work if there was no output format specified in the report URL
* "java.io.NotSerializableException: com.inet.font.truetype.i" occurred if a font path was set and "Page NofM" or PageCount was used in very large reports. Because of that the server could hang
* Regression occurred: Special field "current user" and the formula WebUserName returns the display name. Now it returns again the id of the user and not the display name
* Embedded fonts used in PDF documents embedded in a sub report where missing in the created report
* Layout of text in right to left fonts (Arabic, Hebrew) was wrong, if the text parts have different styles (bold, italic, etc.). It occurs in the output formats: PDF, PostScript, image and Java report viewer
* Sorting in charts with 2 groups was incorrect if the first category value does not contains all series values of the chart. In this case the sorting of the series was incorrect
* PDF export: Embedded fonts with glyphs in the range of 0xF000-0xF0FF were not dispalyed in PDF file
* CSV export: Empty CSV export with encoding UTF8 opened with MS Excel. MS Excel shows the content "ï»¿" in the first cell instead of a complete empty table
* ORA-01000: maximum open cursors exceeded - occurred if Oracle JDBC driver was used
* NullPointerException in debug mode if a plugin has no version information
* Patching the SQL command to query the metadata (column names) was wrong if the command contains function `listagg(...) within group ...`. In this case `WHERE 1=0` was added to the listagg function
* XLSX / ODS export: Percentage number was incorrectly displayed (multipled by 100)
* Patches the SQL command to query the metadata (column names) was wrong if the SQL statement contains strings which contains brackets, e.g. `REPLACE(A.FIELD,'；)',')')`. In this case `WHERE 1=0` was added after the `ORDER By` clause
* Break algorithm improved for Text Interpretation "HTML(advanced)" to prevent breaks in text lines
* Oracle table source identifier with a package name will be always used as name of a stored procedure and never as name of a table. This makes it possible to use the same name for a package stored procedure and a table
* IllegalStateException: REGISTER error occurred because a classloader loop occurred if the i-net Clear Reports libaries has been added to /lib directory
* Layout of text in right to left fonts (Arabic, Hebrew) was wrong in the design view, if the text parts have different styles (bold, italic, etc.)
* `NullPointerException` occurred when opening an `rpt` file with corrupt subreport, created by an older i-net Designer version
* XLSX export: Line offset was wrong on third sheet if "New sheet per top level" was enabled
* The automatic font scaling did not work as expected in Internet Explorer
* Buttons to sort and filter task list not displayed if Task Planner list is very long
* Report server was started with command line parameter "-importdatasource" or "-forceimportdatasource"

### Data Source Manager
* For a new Oracle datasource the default value of the property "Supports SQL92" was false. Since Oracle version 9 it supports the SQL ANSI 92 syntax. Therefore the default value is true now
* The datasource manager allows to enter a custom database/catalog name while still suggesting existing names
* Cannot read property 'driver.group.basic' of undefined occurred if a datasource was saved without modifications


[bugfixes:de]
* Möglicher Deadlock beim Starten, wenn eine benutzerdefinierte Konfiguration über "clearreports.config" oder "clearreports.configfile" gesetzt wurde
* Berechtigungsprüfung mit Authentifizierungsgruppen für angemeldete Benutzer war falsch
* Mehrere Werte in der Eigenschaft "Andere VM-Argumente" im Konfigurationsdialog "Webserver" wurden nicht unterstützt
* Ein seltener Rundungsfehler trat auf, wenn die Skalierung einer Zahl in einer Formelfunktion um mehr als 9 Stellen reduziert wurde
* Der Zugriff auf das Repository mit Login über WebDav hat unter Windows nicht funktioniert
* OutOfMemory- oder ReportCache-Fehler traten aufgrund von Problemen mit der falsch-positiven Erkennung von zu wenig Speicher auf. Die Protokollausgabe enthält die Warnung: "Es gab eine Situation mit wenig Speicherplatz und möglicherweise wurden einige Aufträge abgebrochen" und möglicherweise andere nachfolgende Fehler
* Sicherheitsproblem "Cross-Site Scripting" aufgetreten
* Unbekannte Operation: `com.inet.report.renderer.doc.controller.bk@0` trat mit `TotalPageCount` (NofM) in Subreports auf
* Die Eigenschaft `RELOAD_ON_NEW_REQUEST` funktioniert nicht, wenn in der URL des Berichts kein Ausgabeformat angegeben wurde
* "java.io.NotSerializableException: com.inet.font.truetype.i" trat auf, wenn ein Fontpfad gesetzt wurde und "Page NofM" oder PageCount in sehr großen Reports verwendet wurde. Dadurch konnte der Server hängen bleiben
* Regression aufgetreten: Spezialfeld "aktueller Benutzer" und die Formel WebUserName gibt den Anzeigenamen zurück. Jetzt wird wieder die ID des Benutzers und nicht der Anzeigename zurückgegeben
* Eingebettete Schriftarten in PDF-Dokumenten, die in einem Teilbericht eingebettet sind, fehlten im erstellten Bericht
* Das Layout von Text in Schriftarten von rechts nach links (Arabisch, Hebräisch) war falsch, wenn die Textteile unterschiedliche Stile haben (fett, kursiv, etc.). Es tritt bei den Ausgabeformaten auf: PDF, PostScript, Bild und Java Report Viewer
* Die Sortierung in Diagrammen mit 2 Gruppen war falsch, wenn der erste Kategoriewert nicht alle Serienwerte des Diagramms enthält. In diesem Fall war die Sortierung der Serien fehlerhaft
* PDF-Export: Eingebettete Schriftarten mit Glyphen im Bereich von 0xF000-0xF0FF wurden in der PDF-Datei nicht angezeigt
* CSV-Export: Leerer CSV-Export mit Kodierung UTF8 wurde mit MS Excel geöffnet. MS Excel zeigt den Inhalt "ï "¿" in der ersten Zelle anstelle einer komplett leeren Tabelle
* ORA-01000: Maximale Anzahl offener Cursor überschritten - trat auf, wenn Oracle JDBC-Treiber verwendet wurde
* NullPointerException im Debug-Modus, wenn ein Plugin keine Versionsinformationen hat
* Patching des SQL-Befehls zur Abfrage der Metadaten (Spaltennamen) war falsch, wenn der Befehl die Funktion `listagg(...) innerhalb der Gruppe ...` enthält. In diesem Fall wurde `WHERE 1=0` zur listagg-Funktion hinzugefügt
* XLSX / ODS-Export: Prozentzahl wurde falsch angezeigt (mit 100 multipliziert)
* Patches der SQL-Befehl zur Abfrage der Metadaten (Spaltennamen) war falsch, wenn die SQL-Anweisung Strings enthält, die Klammern enthalten, z.B. `REPLACE(A.FIELD,'；)',')')`. In diesem Fall wurde `WHERE 1=0` nach der `ORDER By` Klausel hinzugefügt
* Umbruchalgorithmus für die Textinterpretation "HTML(advanced)" verbessert, um Umbrüche in Textzeilen zu verhindern
* Oracle-Tabellen-Quellbezeichner mit einem Paketnamen werden immer als Name einer gespeicherten Prozedur und nie als Name einer Tabelle verwendet. Dadurch ist es möglich, denselben Namen für eine Stored Procedure und eine Tabelle zu verwenden
* IllegalStateException: REGISTER-Fehler ist aufgetreten, weil eine Classloader-Schleife aufgetreten ist, wenn die i-net Clear Reports-Bibliotheken zum /lib-Verzeichnis hinzugefügt worden sind
* Das Layout von Text in Schriftarten von rechts nach links (Arabisch, Hebräisch) war in der Entwurfsansicht falsch, wenn die Textteile unterschiedliche Stile haben (fett, kursiv, etc.)
* `NullPointerException` trat auf, wenn eine `rpt`-Datei mit beschädigtem Unterbericht geöffnet wurde, die mit einer älteren i-net Designer-Version erstellt wurde
* XLSX-Export: Der Zeilenversatz war auf dem dritten Blatt falsch, wenn "Neues Blatt pro oberster Ebene" aktiviert war
* Die automatische Schriftskalierung funktionierte im Internet Explorer nicht wie erwartet
* Schaltflächen zum Sortieren und Filtern der Aufgabenliste wurden nicht angezeigt, wenn die Liste des Aufgabenplaners sehr lang ist
* Berichtsserver wurde mit Kommandozeilenparameter "-importdatasource" oder "-forceimportdatasource" gestartet

### Datenquellen-Manager
* Für eine neue Oracle-Datenquelle war der Standardwert der Eigenschaft "Unterstützt SQL92" falsch. Seit Oracle Version 9 wird die SQL ANSI 92 Syntax unterstützt. Daher ist der Standardwert jetzt true
* Der Datenquellen-Manager ermöglicht die Eingabe eines benutzerdefinierten Datenbank-/Katalognamens und schlägt gleichzeitig bestehende Namen vor
* Die Eigenschaft 'driver.group.basic' von undefined konnte nicht gelesen werden, wenn eine Datenquelle ohne Änderungen gespeichert wurde

[security]
* Critical Security Update for Help Plugin (CVE-2020-11431)
* Fixed XXE vulnerability for authenticated users with privileges to ad-hoc reporting or remote designer (CVE-2020-12684)
* Fixed multiple XSS vulnerabilities (login was not required).
* Fixed a path traversal vulnerability which allowed access to files within the installation folder and its sub-folders

[security:de]
* Kritisches Sicherheitsupdate für Help Plugin (CVE-2020-11431)
* Behebung einer XXE-Schwachstelle für authentifizierte Benutzer mit Berechtigungen für Ad-hoc-Berichterstattung oder Remote-Designer (CVE-2020-12684)
* Mehrere XSS-Schwachstellen behoben (Anmeldung war nicht erforderlich).
* Behebung einer Path-Traversal-Schwachstelle, die den Zugriff auf Dateien innerhalb des Installationsordners und seiner Unterordner ermöglichte
