Release Notes

Version 22.12.18.release

Patch-Release 22.12.18 behebt folgende Fehler:

  • In Produktvarianten "gelöschte" zu-1-Beziehungen werden nicht ausgefiltert. (FIPS-11309)

Bei Verwendung von Produktvarianten werden Beziehungen mit der Kardinalität 0..0 überschrieben um sie in der Variante auszuschließen. Bei mehrwertigen Assoziationen wurden Links mit upperBound=0 seit FIPS-7905 gefiltert, einwertige Assoziationen bisher jedoch nicht. Dies wurde nun behoben.

Durch die Modifizierung im Codegenerator kommt es hierbei zu kleinen Änderungen in der Generierung der Getter.
  • EnumContent und TableContent-XML-Dateien: Attribute 'xml:space' is not allowed (FIPS-10532)

Die Schema-Validierung lieferte manchmal Fehler, wenn das Schema nicht online geladen werden konnte. Faktor-IPS nutzt jetzt immer offline mitgelieferte Schema-Definitionen.

Version 22.12.17.release

Version 22.12.17 behebt folgenden Fehler:

  • Vergleich eines erweiterbaren Enums mit == kann fehlschagen (FIPS-11138). Prinzipiell empfehlen wir erweiterbare Enums wie alle Java-Objekte mit equals zu vergleichen. Dennoch haben wir das Caching verbessert, so dass Enum-Werte nicht mehr verworfen und neu geladen werden.

Version 22.12.16.release

Version 22.12.16 behebt folgende Fehler:

  • DefaultRange#contains checkt nicht ob empty (FIPS-9142)

  • Für StringLengthValueSet wird kein toXML generiert (FIPS-10229)

Version 22.12.15.release

Wenn in einer Produktvariante ein Baustein ausgeschlossen wird bleibt dieser aus technischen Gründen mit der Kardinalität [0…​0, 0] erhalten. Ein Aufruf von z.B. getDeckungen() sollte einen solchen Baustein aber seit (Faktor-IPS 22.6) nicht mehr zurückgeben - nur ein Aufruf von getLinksForDeckungen() offenbart noch den Link mit Kardinalität [0…​0, 0]. Dies ist jetzt tatsächlich so (FIPS-10618).

Version 22.12.14.release

Pünktlich nach dem Release von Patch 13 haben wir noch einen weiteren Bug behoben, der sich durch sehr nervige Fehlerdialoge in der Produktbearbeitung bemerkbar machte:

  • Exception nach Änderung im Baustein (FIPS-9915)

Version 22.12.13.release

Dieses Patch-Release behebt das Problem, dass Decimal#min und max eine UnsupportedOperationException warfen, wenn mit Decimal.NULL verglichen wurde statt wie zuvor Decimal.NULL zurückzugeben (FIPS-10403).

Version 22.12.12.release

In Version 22.12.12 wurde ein Fehler beim Umgang mit Produktvorlagen behoben (FIPS-10046).

Version 22.12.11.release

Durch die Umstellung der internen Pluginstruktur waren leider ein paar Plugin-Verknüpfungen fehlerhaft, so dass verschiedene Teile von Faktor-IPS nicht mehr aufeinander zugreifen konnten. Diese Fehler sind nur behoben (FIPS-10087, FIPS-10090, FIPS-10125). Des Weiteren fehlte im faktorips-runtime-JAR die Datei DefaultGenericAttributeValidationConfiguration_en.properties für die englischen Texte der generischen Validierung.

Mit FIPS-9176 wurde noch eine Anpassung der IGenericAttributeValidationConfiguration zurückportiert, die es erlaubt, den Zugriff auf ein ValueSet zu konfigurieren und dieses in der Fehlermeldung zu verwenden.

Version 22.12.10.release

Version 22.12.10 behebt folgende Fehler:

  • generatePublishedInterfaces wird für Dependencies falsch ausgelesen (FIPS-9982)

  • Unrestricted Java-Enum enthält nicht alle Werte (FIPS-10003)

Wenn ein Enum (isEnumType=true) als eigener Datentyp defniert ist und in der Produktkonfiguration als Unrestricted konfiguriert wird, dann wird jetzt ein OrderedValueSet generiert das alle Werte enthält. Dazu wird die in der .ipsproject Datei konfigurierte getAllValuesMethod verwendet.

Version 22.12.9.release

In Version 22.12.9 wird eine optionale Dependency nachgerüstet, die je nach zu Grunde liegendem Eclipse notwendig ist um Tabellen und Aufzählungen aus Excel zu importieren.

Version 22.12.8.release

Release 22.12.8.release rüstet die Offline-Validierungsfähigkeit auch für das Produktvarianten-Plugin 22.12.1 nach.

Version 22.12.7.release

Leider mussten wir direkt nach der Veröffentlichung von Faktor-IPS 22.12.6 feststellen, dass w3.org unter bestimmten Bedingungen zwar erreichbar ist aber dennoch kein XSD liefert. Die Prüfung wurde für 22.12.7 dahingehend verfeinert.

Version 22.12.6.release

Die Offlinefähigkeit der Faktor-IPS-Schema-Validierung beruht auf mitgelieferten Schemadateien - diese fehlten in vorherigen Builds. Zusätzlich wird nun neben der Erreichbarkeit des Faktor-IPS-Schema-Servers auch die des W3C-Basis-XSD-Schemas geprüft und dieses ggf. durch die mitgelieferte Kopie ersetzt. (FIPS-9759)

Version 22.12.5.release

Version 22.12.5 behebt folgende Fehler:

  • IllegalArgumentException bei Erzeugung der Modellbeschreibung (FIPS-9692)

  • faktorips-valuetypes sollte jaxb-api als provided-Dependency nutzen (FIPS-9705)

Die Änderung bezüglich der JAXB-API bedeutet, dass abhängig davon, wo (zum Beispiel bringen JEE-Server üblicherweise ihre eigene JAXB-Implementierung mit) und mit welchem JDK (Java 8 beinhaltet JAXB, neuere Versionen nicht) die Faktor-IPS-Runtime eingesetzt wird, eine JAXB-Dependency im POM hinzugefügt werden muss:

<dependency>
    <groupId>javax.xml.bind</groupId>
    <artifactId>jaxb-api</artifactId>
    <version>2.3.1</version>
</dependency>

Version 22.12.4.release

Version 22.12.4 behebt zwei kleine Fehler beim HTML-Export:

Version 22.12.3.release

Behobene Fehler

  • Rekursion in AbstractRuntimeRepository#getEnumValueLookupService wird zu oft aufgerufen (FIPS-9621)

  • ProductReleaseProzessor wirft NullPointerException bei als JAR referenzierten Modellen (FIPS-9633)

  • Produktbausteine in Ordnern mit Unicode-Zeichen wie Umlauten werden nicht migriert (FIPS-9549)

Version 22.12.2.release

Version 22.12.2 behebt folgende Fehler:

  • Exception bei .ipsproject-XSD-Validation vor Migration von Faktor-IPS 21.12 auf 22.12 (FIPS-9532)

  • Falsche Version im pom bei addNature Wizard (FIPS-9501)

  • Source-Plugins fehlen in p2repository*.zip (FIPS-9521)

Version 22.12.1.release

Behebt Fehler FIPS-9420(Fehler bei Referenz-Suche).

Das Versionsschema wurde angepasst, um sowohl die OSGi-Artefakte (Eclipse-Plugins) als auch die Maven-Artefakte (Runtime) mit einer einheitlichen Versionsnummer veröffentlichen zu können.

Version 22.12.0

Faktor-IPS 22.12 beinhaltet nur kleinere Verbesserungen und Fehlerbehebungen (siehe unten).

Eclipse 2022-09 (4.25) hat umfangreiche Änderungen an den internen Abhängigkeiten von Eclipse vorgenommen. Da diese immer noch zu Problemen auch in Factor-IPS führen, können wir diese Version nicht offiziell unterstützen und raten generell davon ab, sie zu verwenden. Wir planen einen Umstieg auf Eclipse 2022-09 (und Unterstützung neuerer Versionen) inklusive Java 17 als Mindestvoraussetzung für die Entwicklungsumgebung mit Faktor-IPS 23.6. Sollten Sie damit ein Problem vorhersehen oder einen Patch für Faktor-IPS 22.12 in Kombination mit einem neueren Eclipse benötigen kontaktieren Sie uns gerne unter fips@faktorzehn.de.

Umstrukturierung der Plugins und Update der Dependencies

Die Faktor-IPS-Plugins wurden weiter überarbeitet. Eigene Plugins sollten ihre Dependencies ggf. um das neue Bundle org.faktorips.devtools.model.eclipse ergänzen und ihre Imports organisieren. Desweiteren wurden die von Faktor-IPS genutzten Dependencies auf die jeweils aktuellsten Versionen gehoben, wodurch z.B. org.apache.commons.lang durch org.apache.commons.lang3 ersetzt wird.

Migration

Die Migration auf Faktor-IPS 22.12 muss zwingend von einem Faktor-IPS nicht älter als 21.6 aus geschehen, weil dabei einige interne IDs in den Dateien .project, .ipsproject und ggf. .classpath geändert werden (von org.faktorips.devtools.model zu org.faktorips.devtools.model.eclipse). Auch in eigenen Plugins müssen diese Anpassungen vorgenommen werden, da viele Klassen verschoben wurden. Dazu genügt in den meisten Fällen die Eclipse-Operation „Organize Imports“.

Behobene Fehler

  • Erneutes Ausführen einer Produktbausteinsuche geht nicht (FIPS-1432)

  • Tooltip "Ungültiger Testattributname…​" fehlerhaft (FIPS-1548)

  • API stimmt in DefaultRange.size() nicht mit Code überein (FIPS-4267)

  • Min-Kardinalität beim Anlegen neuer Links richtig setzen (FIPS-5556)

  • Export von erweiterbaren Enums: Spalten falsch befüllt (FIPS-7188)

  • Beziehung in nicht editierbaren Modellobjekt hinzufügbar, aber nicht entfernbar (FIPS-7396)

  • Dritte Spalte in Enum wird immer als Literal betrachtet (FIPS-7476)

  • Wenn Enums andere Enums als Spalten nutzen muss dies bei der Reihenfolge der Create- und Insertstatements beachtet werden (FIPS-8488)

  • Installed JDK wird unter neuerem Eclipse nicht gefunden. (FIPS-8585)

  • Zugriff auf Aufzählungsattribute via Name schlägt bei groß geschriebenen Attributsnamen fehl (FIPS-9003)

  • NPE Multiedit: Änderung Tarifvariante in KF-Modell (FIPS-9011)

  • ips-preferences validation error (FIPS-9088)

  • Description-Wurst in New Wizards (FIPS-9100)

  • w3.org xsd über https (FIPS-9185)

  • IpsTests finden ToC aus Maven-Dependencies unter Windows nicht (FIPS-9196)

  • ModelObjectAttributes.resetAttributes(…​, IS_IRRELEVANT_BUT_NOT_EMPTY) wirft Exception wenn Derived_on_The_Fly Attribute irrelevant (FIPS-9246)

  • HTML Export KF Modell: Wertebereiche werden nicht exportiert. (FIPS-9297)

  • NPE in ModelContentProvider (FIPS-9306)

  • Relativer Pfad zu lokalem Maven-Repository funktioniert nicht (FIPS-9335)

Weitere Funktionen und Verbesserungen

  • CVS Import schmeißt Fehler bei selbst erstellter Datei (FIPS-6874)

  • Maven Mojo mit Tycho release 2.4.0 (FIPS-8061)

  • XML-Schema für .ipsproject (FIPS-8675)

  • Faktor-IPS-Maven-Plugin mit Tycho 3 (FIPS-9127)

  • Refactoring von Attributnamen sollte auch Regeln umbenennen (FIPS-6848)

  • Beim "Migriere Projekte" Wizard fehlt ein "Select/Deselect All" (FIPS-6964)

  • Label für Validierung eines Attributs konfigurierbar machen (FIPS-7758)

  • Sprechende Fehlermeldung statt NullPointerException bei unbekanntem geerbtem Datentyp (FIPS-8471)

  • Bei Produktbeziehungen immer zulassen, dass sie keine Vertragsbeziehung konfigurieren (FIPS-8562)

  • Produktbausteintyp-Attribut vom Typ String(mehrsprachig) modellseitig konfigurieren: Pflichtattribut (FIPS-8598)

  • Beschreibungen von Tabellen werden nicht im Modell-Beschreibungsview angezeigt (FIPS-8949)

  • Schema in .ipsproject-Templates des Archetype (FIPS-9015)

  • Einheitlicher Umgang mit null/Leerstring als Default (FIPS-9042)

  • BOM für Faktor-IPS (FIPS-9045)

  • Archetype-Doku anpassen: funktioniert jetzt auch in Eclipse ab 2022-09 (FIPS-9220)

  • Switch to Tycho 3.0 Release (FIPS-9266)