Community
Participate
Working Groups
Due to bug 208143 we still have times when a feature's content changes (that is, contents in the sense of the bundles it includes) but the version qualifier and suffix do not change. Until that bug is fixed, we could add some releng tests that checked a current build against a previous build and simply did a text compare on feature.xml files ... if versions are exactly the same, the feature.xml files should be exactly the same (in the error case, the versions would be exactly the same but one feature.xml file would mention a different "included" bundle version). Should also investigate the "comparator" function in p2 mirror operation to see if it would do similar thing (though its intent is different).
I've managed to have a "proof of concept" that it is feasible to use the comparator to detect these type of "feature content changes but version is the same" sorts of errors. While starting up our post SR1 builds (and doing more with installing tests, rather than merely unzipping, There was a p2 install error about "conflicting dependencies" which didn't make much sense except I was accidentally installing the the tests twice (once from previous release, and currently built ones. But, even then it should have worked (and had been for a few runs) except we must have hit bug 208143. See bug 326473 for details there. Knowing there was a problem with previous build and current one, I quickly hacked together a not-very automatic comparator test, and it did detect a feature had same version, but different contents. I'll leave this bug open until I get it more automated, just wanted to document some progress. The message was similar to = = = = org.eclipse.wst.ws_sdk.feature,3.2.2.v201008211705-793AD9xVEIMfbS0PCYMeFWvUNJge The entry "Feature: org.eclipse.wst.ws_ui.feature 3.2.2.v201008211705-7I78FZFEtEoO2c5BlJ4jPNwNC-yS" is not present in both features. The entry "Feature: org.eclipse.wst.ws_ui.feature.source 3.2.2.v201008211705-7I78FZFEtEoO2c5BlJ4jPNwNC-yS" is not present in both features. = = = =
Just to cross reference, we've had another "success" of the test finding errors ... in this case, from our M2 build to our first declared build after M2. See bug 327176.
This is pretty well automated and working well. FWIW, we get "failures" almost every weekly build!