Community
Participate
Working Groups
ECF added a new hard dependency on org.eclipse.equinox.concurrent yesterday. This means any p2 application or product needs to add this new bundle if it doesn't already have it. p2 itself has three such products that need fixing: Bootstrap.product in org.eclipse.equinox.p2.reconciler.drops installer.product in org.eclipse.equinox.p2.installer rcp.product in org.eclipse.equinox.p2.ui.admin.rcp
For reference the ECF change was in bug 382039.
Note there is a PDE build test that verifies the bootstrap product works, which is how the problem was found: testMetadataGenerator_BootStrap Failure N/A junit.framework.AssertionFailedError at org.eclipse.pde.build.tests.PDETestCase.assertResourceFile(PDETestCase.java:244) at org.eclipse.pde.build.internal.tests.p2.P2Tests.testMetadataGenerator_BootStrap(P2Tests.java:1011) at org.eclipse.pde.build.tests.PDETestCase.runTest(PDETestCase.java:61) at org.eclipse.test.EclipseTestRunner.run(EclipseTestRunner.java:501) at org.eclipse.test.EclipseTestRunner.run(EclipseTestRunner.java:259) at org.eclipse.test.CoreTestApplication.runTests(CoreTestApplication.java:36)
John, I thought that we pull a specific version of ECF, that is, something they added 'yesterday' shouldn't affect us.
(In reply to comment #3) > John, I thought that we pull a specific version of ECF, that is, something they > added 'yesterday' shouldn't affect us. ECF requested that we consume their new build, which we did (also yesterday). See bug 382103.
Even with the bundle absent from the product file, it should still be pulled in so I'm not sure why we want to bother fixign this now.
Scott Lewis has removed the required dependency and added the greedy flag. https://bugs.eclipse.org/bugs/show_bug.cgi?id=382039
(In reply to comment #5) > Even with the bundle absent from the product file, it should still be pulled in > so I'm not sure why we want to bother fixign this now. I suspect it is not pulled in when PDE launches using the product file. I'm not sure if it is pulled in automatically if you export or build the product.
(In reply to comment #7) > (In reply to comment #5) > > Even with the bundle absent from the product file, it should still be pulled in > > so I'm not sure why we want to bother fixign this now. > > I suspect it is not pulled in when PDE launches using the product file. I'm > not sure if it is pulled in automatically if you export or build the product. The bundle should get pulled in for a p2 based build provided that the metadata for that bundle is available to the PDE build. (provided as a context repository). PDE will only generate new metadata for things included in the product and not for things that are required. From comment #2, the org.eclipse.pde.build.internal.tests.p2.P2Tests.testMetadataGenerator_BootStrap test is testing the old 3.4 style work flow which generated metadata from the binary results of a "classic" PDE build. In this case, the bundle would need to be added to the .product file in order to be included in the results.
Tom and I looked at this today, and none of these products are actually being built (outside of tests). The Bootstrap.product seems to only be used as a PDE/Build test case. This should obviously be fixed for SR1. The installer.product and rcp.product are not built anymore. They suffered from bit rot (and were not even working properly in 3.7 SR2) so we removed them from the standard build. I think the rcp.product is interesting and worth bringing back. If this ever happens, we will need to update this product to include the o.e.e.concurrent bundle.
(In reply to comment #9) > Tom and I looked at this today, and none of these products are actually being > built (outside of tests). The Bootstrap.product seems to only be used as a > PDE/Build test case. This should obviously be fixed for SR1. The > installer.product and rcp.product are not built anymore. They suffered from bit > rot (and were not even working properly in 3.7 SR2) so we removed them from the > standard build. The bootstrap product is included in the org.eclipse.equinox.p2.reconciler.dropins bundle. It is used for a very specialized use case and I agree fixing in SR1 is reasonable.
(In reply to comment #10) > The bootstrap product is included in the > org.eclipse.equinox.p2.reconciler.dropins bundle. It is used for a very > specialized use case and I agree fixing in SR1 is reasonable. John, can you elaborate about the 'specialized use case'? I'm just wondering if there is something that will be broken with Juno that we (I) should be aware of. I assumed the bootstrap product was used when p2 was first being developed (to help 'bootstrap' p2 development).
I am sure you have seen that ECF fixed the problem. You can pickup our new build as indicated in bug 382206. What is it that I am missing? Is it to late to pick it up?
(In reply to comment #10) > (In reply to comment #9) > > Tom and I looked at this today, and none of these products are actually being > > built (outside of tests). The Bootstrap.product seems to only be used as a > > PDE/Build test case. This should obviously be fixed for SR1. The > > installer.product and rcp.product are not built anymore. They suffered from bit > > rot (and were not even working properly in 3.7 SR2) so we removed them from the > > standard build. > > The bootstrap product is included in the > org.eclipse.equinox.p2.reconciler.dropins bundle. It is used for a very > specialized use case and I agree fixing in SR1 is reasonable. I was not aware of the product file in dropins. Just for reference, it is here: http://git.eclipse.org/c/equinox/rt.equinox.p2.git/tree/bundles/org.eclipse.equinox.p2.reconciler.dropins/Bootstrap.product The one from the PDE build failures I believe is used from here: http://git.eclipse.org/c/pde/eclipse.pde.build.git/tree/org.eclipse.pde.build.tests/resources/metadataGenerator_Bootstrap/Bootstrap.product (In reply to comment #12) > I am sure you have seen that ECF fixed the problem. You can pickup our new > build as indicated in bug 382206. > > What is it that I am missing? Is it to late to pick it up? If it is not too late I would like to consider picking that up. But the others on the Eclipse PMC need to discuss it.
Ping! It's getting closer to SR1.
ECF has since switched back to a greedy optional dependency (bug 382206) so this change is no longer needed.
*** Bug 388707 has been marked as a duplicate of this bug. ***