Cause:
#493
Example project:
https://github.com/takari/takari-lifecycle
It uses modello 2.4.0 but if you up modello to 2.5.0 it explodes. Reason is the singular/plural change. Modello 2.4.0 generated code wrote XML as:
<superclasses>
<superclasse>io.takari.lifecycle.uts.plugindescriptor.LegacyMojo</superclasse>
<superclasse>org.apache.maven.plugin.AbstractMojo</superclasse>
</superclasses>
Modello 2.5.0 fixes this, inner element becomes superclass. But, generated reader loses all ability to read XML written out by writer that was generated from SAME model using Modello 2.4.0. In other words: same model generated by modello 2.4.0 and 2.5.0 are not compatible.
Typically, the Takari incremental build project https://github.com/takari/io.takari.incrementalbuild uses Takari Lifecycle as well, so it already contains metadata generated by (released) Lifecycle, and it will contain superclasse. In Lifecycle build itself, IF I up modello to 2.5.0, code suddenly loses ability to read existing descriptors, and all explodes.