Le 6/12/2016 à 08:08, Felix Natter a écrit : > I think the problem was simply that freeplane needed to be recompiled > with the new jgoodies-forms [1]. > First we made freeplane-1.5.16-2 compatible with the new > jgoodies-forms-1.9.0, then > we uploaded the new jgoodies-forms, which apparently did not trigger a > rebuild of freeplane. > > How does debian work here, when are rebuilds triggered? So for these > types of changes > (the type of Borders.DLU2 changed from Borders to Paddings, see > decompiled code above), > I always need to provide a freeplane update?
Hi Felix, You've been hit by a binary incompatibility between jgoodies-forms 1.6 and 1.9. The type of the Borders.DLU2 field changed from javax.swing.Border to com.jgoodies.forms.factories.Paddings.Padding. This modification is source compatible (Padding implements javax.swing.Border) but not binary compatible (the JVM attempts to match the exact signature), thus requiring the StyleEditorPanel class to be recompiled. There is no mechanism is Debian to detect this kind of incompatibility (that would be an excellent task for a GSoC student!), even the periodic rebuilds performed by the Reproducible Builds Team wouldn't be able to detect it. So rebuilding manually is the best thing you can do in this case. Emmanuel Bourg