Community
Participate
Working Groups
While debugging, I found out that the customization builder appeared before all the other builders in the list of builders, which is supposed to be ordered by dependency. It should be last in this list, since it depends on the ecore, query and facet builders. The ModiscoProjectBuilder.BuilderDescriptor#compareTo method gives those results (where C=customization builder, E=ecore builder, etc.): C = E, E < F, F > Q, E < Q, F = J The resulting list is C,E,Q,F,J, which is consistent with the results returned by compare. The problem lies in the fact that compare returns 0 (meaning equal) for 2 builders that are independent, but not equal, hereby breaking the contract of "Comparable". In fact, depending on the sorting algorithm (quick sort, insertion sort, etc.), the result can be different.
Fixed in revision 2188, by using a different algorithm for sorting: first add builders that depend on nothing to a list, then those that depend only on those already in the list, etc.
Bug fixed.