Community
Participate
Working Groups
Build Identifier: 20110916-0149 I am materializing features from a local SVN repository. The main feature (A) targeted in my cquery depends on another feature (B) which is recorded in the feature.xml. While all plugins from feature B are correctly materialized, feature B itself is not materialized. Reproducible: Always
Can you please provide some more info. What does your cquery look like? Your rmap?
(In reply to comment #1) > Can you please provide some more info. What does your cquery look like? Your > rmap? cquery: <?xml version="1.0" encoding="UTF-8"?> <cq:componentQuery xmlns:cq="http://www.eclipse.org/buckminster/CQuery-1.0" resourceMap="file:/C:/myresourcemap.rmap"> <cq:rootRequest name="com.example.a.feature" componentType="eclipse.feature"/> </cq:componentQuery> rmap: <?xml version="1.0" encoding="UTF-8"?> <rm:rmap xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0" xmlns:rm="http://www.eclipse.org/buckminster/RMap-1.0"> <rm:locator searchPathRef="SVN_features" failOnError="false"/> <rm:locator searchPathRef="SVN_plugins" failOnError="false"/> <rm:searchPath name="SVN_plugins"> <rm:provider componentTypes="osgi.bundle" readerType="svn"> <rm:uri format="https://svnserver/svn/Eclipse_RCP/trunk/bundles/{0}"> <bc:propertyRef key="buckminster.component"/> </rm:uri> </rm:provider> </rm:searchPath> <rm:searchPath name="SVN_features"> <rm:provider componentTypes="eclipse.feature" readerType="svn"> <rm:uri format="https://svnserver/svn/Eclipse_RCP/trunk/features/{0}"> <bc:propertyRef key="buckminster.component"/> </rm:uri> </rm:provider> </rm:searchPath> </rm:rmap> feature B is correctly found on the server, otherwise its plugins would not be materialized.
Try adding source="true" to your providers.
(In reply to comment #3) > Try adding source="true" to your providers. Didn't help.
Can you please set the nubmer of resolution threads and materialization threads to 1 (in the preferences) and Buckminster logging to DEBUG and then attach the trace for a resolution?
Created attachment 205009 [details] Buckminster log file
I added the log file as requested. I just replaced the name of our svn server there. When creating the log i was trying to materialize the feature "com.infineon.feature.device.raw". Here is the content of the feature.xml: <?xml version="1.0" encoding="UTF-8"?> <feature id="com.infineon.feature.device.raw" label="Raw Device Drivers" version="1.0.0.qualifier" provider-name="Infineon Technologies Austria AG"> <requires> <import feature="com.infineon.feature.device" version="1.0.0.qualifier"/> </requires> <plugin id="com.infineon.device.raw" download-size="0" install-size="0" version="0.0.0" unpack="false"/> </feature> Several plugins are materialized, but I guess those plugins are fetched because they are bundle dependencies. To my understanding "com.infineon.feature.device.raw" should fetch the feature "com.infineon.feature.device" which itself depends on "com.infineon.feature.tools". When checking the list of materialized plugins I see that not all bundles from "com.infineon.feature.device" and "com.infineon.feature.tools" are materialized. So I guess those features never get checked. They are not mentioned in the logs anyway.
(In reply to comment #7) > To my understanding "com.infineon.feature.device.raw" should fetch the feature > "com.infineon.feature.device" which itself depends on > "com.infineon.feature.tools". > No, that's not correct. The root feature just has an install requirement for this feature so it will not be included. In general, stuff listed in the <requires></requires> does not generate Buckminster dependencies. > When checking the list of materialized plugins I see that not all bundles from > "com.infineon.feature.device" and "com.infineon.feature.tools" are > materialized. So I guess those features never get checked. They are not > mentioned in the logs anyway. So, what is missing in the end result? Is the com.infineon.feature.device.raw feature materialized? The log seems to indicate that this is the case.
(In reply to comment #8) > So, what is missing in the end result? Is the com.infineon.feature.device.raw > feature materialized? The log seems to indicate that this is the case. "com.infineon.feature.device" is missing. But as it is just an install requirement - as you said - it is clear that it is missing. All plugins needed to run the feature "com.infineon.feature.device.raw" are materialized correctly. So it was a wrong assumption by me, that dependent features should be materialized too. Is there an option to trigger the behavior I was expecting? If not I'd love to see this feature in one of the next buckminster releases!
(In reply to comment #9) > Is there an option to trigger the behavior I was expecting? If not I'd love to > see this feature in one of the next buckminster releases! No, sorry. THere's no such option. Please file an enhancement request.