Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 498580

Summary: Issues with metadata/marketplace entry for IBM Node.js Tools for Eclipse
Product: Community Reporter: Carl Anderson <ccc>
Component: MarketplaceAssignee: Marketplace Inbox <marketplace-inbox>
Status: RESOLVED INVALID QA Contact:
Severity: blocker    
Priority: P3 CC: chris.guindon, reckord
Version: unspecified   
Target Milestone: ---   
Hardware: All   
OS: All   
Whiteboard:

Description Carl Anderson CLA 2016-07-27 10:03:58 EDT
IBM Node.js Tools for Eclipse ( https://marketplace.eclipse.org/content/ibm-nodejs-tools-eclipse ) installs correctly/perfectly using p2 from http://public.dhe.ibm.com/ibmdl/export/pub/software/websphere/wasdev/updates/nodejst/ .  But when using the Eclipse Marketplace, strange issues arise-  Last Thursday (7/21), I published a new version of the content at http://public.dhe.ibm.com/ibmdl/export/pub/software/websphere/wasdev/updates/nodejst/ and changed the entry quite a bit (from Beta to GA, from Mars to Neon).  It all appeared correctly, but the com.ibm.nodejstools.prereq.feature was not getting installed properly when com.ibm.nodejstools.feature was selected (I had hidden that feature within the Eclipse Marketplace and configured a p2.inf to show the prereq feature as required for the main feature).  Since that did not work, I reverted those changes and published new content to http://public.dhe.ibm.com/ibmdl/export/pub/software/websphere/wasdev/updates/nodejst/ .  At that point, the prereq feature showed up in the Eclipse Marketplace entry, but the name was showing as com.ibm.nodejstools.prereq.feature instead of IBM Node.js Tools Prereqs (but the other feature names were all showing correctly).  I dug into this on Friday and found that the category.xml and artifacts.xml files were nearly identical to the content before the 7/21 update, but that the contents.xml was quite different, so I reverted those changes concerning com.ibm.nodejstools.prereq.feature and did a publish.  The feature name still showed (instead of the readable text version in feature.properties), and install attempts produced a message that says: 

!MESSAGE The following solutions are not available: IBM Node.js Tools for Eclipse (id=com.ibm.nodejstools.prereq.feature.feature.group, site=http://public.dhe.ibm.com/ibmdl/export/pub/software/websphere/wasdev/updates/nodejst/)

So, I republished the same content that I had published on my second try on 7/21.  That content is still there.  However, the error message has not changed.  This really confuses me- the content that is there is the content that worked on various attempts over the weekend (but showed com.ibm.nodejstools.prereq.feature instead of IBM Node.js Tools Prereqs), yet now it will not install via the Eclipse Marketplace.  I am so confused.  I have twiddled with the Eclipse Marketplace entry, hoping that changes there might cause some metadata refresh that might resolve this issue, but there have been no changes.
	Can you please advise me on how to proceed in correcting publishing issues such as this?  Is there a way that I can force a metadata refresh on a Marketplace entry?  Any advice would be most appreciated.
Comment 1 Christopher Guindon CLA 2016-07-27 10:58:38 EDT
Carsten, do you think this is an issue with MPC?
Comment 2 Carsten Reckord CLA 2016-07-27 12:42:25 EDT
Looking into it.
Comment 3 Carsten Reckord CLA 2016-07-27 13:49:28 EDT
Carl, it looks like you have some issues with your repository:

1. regarding the name of your main com.ibm.nodejstools.feature feature: In my tests it sometimes showed up with its proper name and sometimes with its id. This seems to be caused by download errors for the content.jar, because your repo server is extremely slow (at least at the moment).

2. regarding both the name of your com.ibm.nodejstools.prereq.feature and the logged error: You have a feature with ID com.ibm.nodejstools.prereqs.feature (note the additional 's') published in your repository, but list com.ibm.nodejstools.prereq.feature (without the 's') on the Marketplace. Since no such feature is found, MPC cannot get a proper display name for it, and the installation also fails. 

3. To make matters even more interesting, your main feature declares an optional dependency on a feature with id com.ibm.nodejstools.prereq (no 's', no '.feature'). Not sure if that is intended, but no such feature is found. Since it's optional, the installation will happily proceed without it...

As for 2., I'm not sure why we don't show an error indicating that the feature is unavailable in the wizard on the feature selection page - I'll look into changing that.
Comment 4 Christopher Guindon CLA 2016-07-28 15:08:40 EDT
(In reply to Carsten Reckord from comment #3)
> Carl, it looks like you have some issues with your repository:
> 
> 1. regarding the name of your main com.ibm.nodejstools.feature feature: In
> my tests it sometimes showed up with its proper name and sometimes with its
> id. This seems to be caused by download errors for the content.jar, because
> your repo server is extremely slow (at least at the moment).
> 
> 2. regarding both the name of your com.ibm.nodejstools.prereq.feature and
> the logged error: You have a feature with ID
> com.ibm.nodejstools.prereqs.feature (note the additional 's') published in
> your repository, but list com.ibm.nodejstools.prereq.feature (without the
> 's') on the Marketplace. Since no such feature is found, MPC cannot get a
> proper display name for it, and the installation also fails. 
> 
> 3. To make matters even more interesting, your main feature declares an
> optional dependency on a feature with id com.ibm.nodejstools.prereq (no 's',
> no '.feature'). Not sure if that is intended, but no such feature is found.
> Since it's optional, the installation will happily proceed without it...
> 
> As for 2., I'm not sure why we don't show an error indicating that the
> feature is unavailable in the wizard on the feature selection page - I'll
> look into changing that.

Thank you for looking into this :) Changing this bug to Resolved/Invalid.