]
Nick Boldt commented on JBIDE-14844:
------------------------------------
we can now put plugins on update sites directly, just not in Central / Marketplace.
If you expect that dependencies on this plugin (fragment) will come from downstream JBT
features or plugins, then there's nothing else we'd need to do here.
The only reason for a feature wrapper specifically for this fragment would be to empower
users to install this from:
a) a category in the JBT update site(s)
b) Marketplace
c) JBoss Central
If you want it as an uncategorized item that's only visible on the update site when
you uncheck 'categorized features', we can do that today w/o a feature wrapper.
That way it's available for other features/plugins to depend on it under the covers,
without the need for extra fluff.
Proper feature location for org.jboss.tools.foundation.security.linux
fragment
------------------------------------------------------------------------------
Key: JBIDE-14844
URL:
https://issues.jboss.org/browse/JBIDE-14844
Project: Tools (JBoss Tools)
Issue Type: Task
Components: common/jst/core
Affects Versions: 4.1.0.Beta2
Reporter: Rob Stryker
Assignee: Rob Stryker
Fix For: 4.1.0.CR1
Related to TEIIDDES-1591
There is a new plugin fragment which provides a more informative dialog for secure
storage. This fragment is named org.jboss.tools.foundation.security.linux.
No other plugin or feature should ever have a binary dependency on this plugin fragment.
It may, however, be something projects like AS-Tools or Openshift decide should be
installed alongside with it. Plugin dependencies on this fragment should never happen,
especially because this fragment should only be installed in linux, not on windows or mac.
Currently the fragment is included in the feature named
org.jboss.tools.foundation.feature. This is not optimal for a few reasons.
1) The future of this feature is uncertain. What it will contain, or whether it will
continue to exist in its current form, is up for big changes in the next major release.
2) Subsets of JBT which may wish this fragment to be present but do not have a binary
dependency on this fragment will probably use a feature requirement of some type.
3) If this fragment continues to live in org.jboss.tools.foundation.feature, then any
plugin which is also in that feature will by default be required by any higher-level
feature which 'requires' this. So, for example, if AS-Tools wishes this fragment
to be present and then 'requires' the foundation.feature, an addition of
egit-related plugins to foundation.feature would then make AS-Tools require egit, which
does not make sense.
4) Even if no plugins were added to o.j.t.foundation.feature, it then also means this
fragment cannot be moved OUT of foundation.feature, as higher-level projects will
'require' foundation.feature and expect the fragment to be present. Moving this
fragment out of its current feature would then be a breaking change, and any higher-level
features expecting current behavior would then need to be changed / updated to point to
this fragments new wrapper-feature. This is a breaking change. As an example of this,
if AS-Tools decides to require o.j.t.foundation.feature and expects the fragment to be
pulled in, moving the fragment away will result in AS-Tools not having the fragment
installed. AS-Tools would then need to update their features to point to the security
fragment's new home.
5) Having the fragment in NO feature at all would prevent the fragment from being
available on update sites.
6) Having a higher-level plugin directly "depend on" this plugin in its
manifest.mf does not make sense, especially for installations on windows or mac.
I believe the optimal solution is to give this security fragment its own wrapper feature,
so that it may be included on update sites, 'required' by projects/products like
TD or AS-Tools without any danger of refactors later, and many other benefits.
I would appreciate feedback on my thoughts here.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: